From 80dfd74732369352d65599ee26d1aceb5df4f7bb Mon Sep 17 00:00:00 2001 From: Timothy Stack Date: Sun, 25 Apr 2010 21:12:45 -0700 Subject: [PATCH] Add a test for cprepp. --- test/test_pcrepp.cc | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 test/test_pcrepp.cc diff --git a/test/test_pcrepp.cc b/test/test_pcrepp.cc new file mode 100644 index 00000000..987de22d --- /dev/null +++ b/test/test_pcrepp.cc @@ -0,0 +1,43 @@ + +#include "config.h" + +#include +#include + +#include + +#include "pcrepp.hh" + +int main(int argc, char *argv[]) +{ + pcre_context_static<30> context; + int retval = EXIT_SUCCESS; + + { + pcrepp nomatch("nothing-to-match"); + pcre_input pi("dummy"); + + assert(!nomatch.match(context, pi)); + } + + { + pcrepp match1("(\\w*)=(\\d+)"); + pcre_input pi("a=1 b=2"); + + assert(match1.match(context, pi)); + assert((context.end() - context.begin()) == 2); + assert(pi.get_substr(context.begin()) == "a"); + assert(pi.get_substr(context.begin() + 1) == "1"); + + assert(match1.match(context, pi)); + assert((context.end() - context.begin()) == 2); + assert(pi.get_substr(context.begin()) == "b"); + assert(pi.get_substr(context.begin() + 1) == "2"); + } + + { + pcrepp match2(""); + } + + return retval; +}