From f8f92d455c4a915a894111e00dd6f5ec1888bee5 Mon Sep 17 00:00:00 2001 From: Jyri Sarha Date: Tue, 20 Oct 2015 16:55:13 +0300 Subject: Add simple command line option parser and a tester for it --- tests/optiontester.cpp | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 tests/optiontester.cpp (limited to 'tests/optiontester.cpp') diff --git a/tests/optiontester.cpp b/tests/optiontester.cpp new file mode 100644 index 0000000..ccb9579 --- /dev/null +++ b/tests/optiontester.cpp @@ -0,0 +1,29 @@ +#include +#include +#include + +#include "cmdoptions.h" + +using namespace std; + +static map options = { + { "test", NO_PARAM("test") }, + { "test2", HAS_PARAM("test2") }, +}; + +int main(int argc, char **argv) +{ + CmdOptions opts(argc, argv, options); + + if (opts.error().length()) { + cerr << opts.error() << opts.usage(); + return -1; + } + + for (auto p : options) + printf("Option %s set %d param %s\n", + p.first.c_str(), opts.is_set(p.first), + opts.opt_param(p.first).c_str());; + + return 0; +} -- cgit v1.2.3