diff options
Diffstat (limited to 'tests/parsekey.cpp')
-rw-r--r-- | tests/parsekey.cpp | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/tests/parsekey.cpp b/tests/parsekey.cpp index 64f95fb..3e53b82 100644 --- a/tests/parsekey.cpp +++ b/tests/parsekey.cpp @@ -26,8 +26,8 @@ using namespace sword; #endif int main(int argc, char **argv) { - if ((argc < 2) || (argc > 4)) { - std::cerr << "usage: " << *argv << " <\"string to parse\"> [locale_name] [v11n] [test-in-set-verse]\n"; + if ((argc < 2) || (argc > 7)) { + std::cerr << "usage: " << *argv << " <\"string to parse\"> [locale_name] [v11n] [context] [echo params 1|0] [test-in-set-verse]\n"; exit(-1); } @@ -40,18 +40,22 @@ int main(int argc, char **argv) { if (argc > 3) DefaultVSKey.setVersificationSystem(argv[3]); + const char *context = (argc > 4) ? argv[4] : "gen.1.1"; + SWLog::getSystemLog()->setLogLevel(SWLog::LOG_DEBUG); DefaultVSKey.validateCurrentLocale(); - DefaultVSKey = "jas3:1"; + DefaultVSKey = context; ListKey verses = DefaultVSKey.ParseVerseList(argv[1], DefaultVSKey, true); - for (int i = 1; i < argc; i++) { - if (i > 1) std::cout << " "; - std::cout << argv[i]; + if ((argc > 5) && (argv[5][0] == '1')) { + for (int i = 1; i < argc; i++) { + if (i > 1) std::cout << " "; + std::cout << argv[i]; + } + std::cout << ": "; } - std::cout << ": "; std::cout << verses.getRangeText() << "\n"; /* for (int i = 0; i < verses.Count(); i++) { @@ -59,7 +63,7 @@ int main(int argc, char **argv) { } */ - if (argc > 4) { + if (argc > 6) { verses.setText(argv[4]); std::cout << "Verse is" << ((verses.Error()) ? " NOT" : "") << " in set.\n\n"; } |