From d3709850485c8a3b8f2768900fd47485933c1e91 Mon Sep 17 00:00:00 2001 From: c9s Date: Mon, 2 Jun 2014 10:07:50 +0800 Subject: [PATCH] Add endpoint tests --- gen_route_tests.rb | 1 + tests/check_routes.c | 336 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 337 insertions(+) diff --git a/gen_route_tests.rb b/gen_route_tests.rb index ab877bd..e32488c 100644 --- a/gen_route_tests.rb +++ b/gen_route_tests.rb @@ -41,6 +41,7 @@ paths.each_index do |idx| puts " m = r3_tree_match(n, \"#{path}\", NULL);" puts " ck_assert(m);" puts " ck_assert(m->data == data#{idx});" + puts " ck_assert_int_gt(m->endpoint, 0);" end diff --git a/tests/check_routes.c b/tests/check_routes.c index ef4e904..f8b3ec5 100644 --- a/tests/check_routes.c +++ b/tests/check_routes.c @@ -693,1011 +693,1347 @@ START_TEST (test_routes) m = r3_tree_match(n, "/foo/bar/baz", NULL); ck_assert(m); ck_assert(m->data == data0); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/bar/qux", NULL); ck_assert(m); ck_assert(m->data == data1); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/bar/quux", NULL); ck_assert(m); ck_assert(m->data == data2); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/bar/corge", NULL); ck_assert(m); ck_assert(m->data == data3); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/bar/grault", NULL); ck_assert(m); ck_assert(m->data == data4); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/bar/garply", NULL); ck_assert(m); ck_assert(m->data == data5); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/baz/bar", NULL); ck_assert(m); ck_assert(m->data == data6); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/baz/qux", NULL); ck_assert(m); ck_assert(m->data == data7); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/baz/quux", NULL); ck_assert(m); ck_assert(m->data == data8); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/baz/corge", NULL); ck_assert(m); ck_assert(m->data == data9); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/baz/grault", NULL); ck_assert(m); ck_assert(m->data == data10); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/baz/garply", NULL); ck_assert(m); ck_assert(m->data == data11); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/qux/bar", NULL); ck_assert(m); ck_assert(m->data == data12); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/qux/baz", NULL); ck_assert(m); ck_assert(m->data == data13); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/qux/quux", NULL); ck_assert(m); ck_assert(m->data == data14); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/qux/corge", NULL); ck_assert(m); ck_assert(m->data == data15); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/qux/grault", NULL); ck_assert(m); ck_assert(m->data == data16); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/qux/garply", NULL); ck_assert(m); ck_assert(m->data == data17); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/quux/bar", NULL); ck_assert(m); ck_assert(m->data == data18); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/quux/baz", NULL); ck_assert(m); ck_assert(m->data == data19); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/quux/qux", NULL); ck_assert(m); ck_assert(m->data == data20); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/quux/corge", NULL); ck_assert(m); ck_assert(m->data == data21); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/quux/grault", NULL); ck_assert(m); ck_assert(m->data == data22); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/quux/garply", NULL); ck_assert(m); ck_assert(m->data == data23); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/corge/bar", NULL); ck_assert(m); ck_assert(m->data == data24); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/corge/baz", NULL); ck_assert(m); ck_assert(m->data == data25); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/corge/qux", NULL); ck_assert(m); ck_assert(m->data == data26); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/corge/quux", NULL); ck_assert(m); ck_assert(m->data == data27); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/corge/grault", NULL); ck_assert(m); ck_assert(m->data == data28); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/corge/garply", NULL); ck_assert(m); ck_assert(m->data == data29); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/grault/bar", NULL); ck_assert(m); ck_assert(m->data == data30); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/grault/baz", NULL); ck_assert(m); ck_assert(m->data == data31); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/grault/qux", NULL); ck_assert(m); ck_assert(m->data == data32); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/grault/quux", NULL); ck_assert(m); ck_assert(m->data == data33); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/grault/corge", NULL); ck_assert(m); ck_assert(m->data == data34); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/grault/garply", NULL); ck_assert(m); ck_assert(m->data == data35); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/garply/bar", NULL); ck_assert(m); ck_assert(m->data == data36); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/garply/baz", NULL); ck_assert(m); ck_assert(m->data == data37); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/garply/qux", NULL); ck_assert(m); ck_assert(m->data == data38); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/garply/quux", NULL); ck_assert(m); ck_assert(m->data == data39); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/garply/corge", NULL); ck_assert(m); ck_assert(m->data == data40); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/foo/garply/grault", NULL); ck_assert(m); ck_assert(m->data == data41); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/foo/baz", NULL); ck_assert(m); ck_assert(m->data == data42); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/foo/qux", NULL); ck_assert(m); ck_assert(m->data == data43); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/foo/quux", NULL); ck_assert(m); ck_assert(m->data == data44); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/foo/corge", NULL); ck_assert(m); ck_assert(m->data == data45); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/foo/grault", NULL); ck_assert(m); ck_assert(m->data == data46); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/foo/garply", NULL); ck_assert(m); ck_assert(m->data == data47); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/baz/foo", NULL); ck_assert(m); ck_assert(m->data == data48); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/baz/qux", NULL); ck_assert(m); ck_assert(m->data == data49); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/baz/quux", NULL); ck_assert(m); ck_assert(m->data == data50); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/baz/corge", NULL); ck_assert(m); ck_assert(m->data == data51); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/baz/grault", NULL); ck_assert(m); ck_assert(m->data == data52); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/baz/garply", NULL); ck_assert(m); ck_assert(m->data == data53); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/qux/foo", NULL); ck_assert(m); ck_assert(m->data == data54); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/qux/baz", NULL); ck_assert(m); ck_assert(m->data == data55); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/qux/quux", NULL); ck_assert(m); ck_assert(m->data == data56); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/qux/corge", NULL); ck_assert(m); ck_assert(m->data == data57); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/qux/grault", NULL); ck_assert(m); ck_assert(m->data == data58); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/qux/garply", NULL); ck_assert(m); ck_assert(m->data == data59); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/quux/foo", NULL); ck_assert(m); ck_assert(m->data == data60); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/quux/baz", NULL); ck_assert(m); ck_assert(m->data == data61); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/quux/qux", NULL); ck_assert(m); ck_assert(m->data == data62); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/quux/corge", NULL); ck_assert(m); ck_assert(m->data == data63); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/quux/grault", NULL); ck_assert(m); ck_assert(m->data == data64); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/quux/garply", NULL); ck_assert(m); ck_assert(m->data == data65); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/corge/foo", NULL); ck_assert(m); ck_assert(m->data == data66); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/corge/baz", NULL); ck_assert(m); ck_assert(m->data == data67); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/corge/qux", NULL); ck_assert(m); ck_assert(m->data == data68); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/corge/quux", NULL); ck_assert(m); ck_assert(m->data == data69); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/corge/grault", NULL); ck_assert(m); ck_assert(m->data == data70); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/corge/garply", NULL); ck_assert(m); ck_assert(m->data == data71); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/grault/foo", NULL); ck_assert(m); ck_assert(m->data == data72); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/grault/baz", NULL); ck_assert(m); ck_assert(m->data == data73); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/grault/qux", NULL); ck_assert(m); ck_assert(m->data == data74); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/grault/quux", NULL); ck_assert(m); ck_assert(m->data == data75); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/grault/corge", NULL); ck_assert(m); ck_assert(m->data == data76); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/grault/garply", NULL); ck_assert(m); ck_assert(m->data == data77); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/garply/foo", NULL); ck_assert(m); ck_assert(m->data == data78); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/garply/baz", NULL); ck_assert(m); ck_assert(m->data == data79); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/garply/qux", NULL); ck_assert(m); ck_assert(m->data == data80); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/garply/quux", NULL); ck_assert(m); ck_assert(m->data == data81); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/garply/corge", NULL); ck_assert(m); ck_assert(m->data == data82); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/bar/garply/grault", NULL); ck_assert(m); ck_assert(m->data == data83); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/foo/bar", NULL); ck_assert(m); ck_assert(m->data == data84); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/foo/qux", NULL); ck_assert(m); ck_assert(m->data == data85); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/foo/quux", NULL); ck_assert(m); ck_assert(m->data == data86); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/foo/corge", NULL); ck_assert(m); ck_assert(m->data == data87); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/foo/grault", NULL); ck_assert(m); ck_assert(m->data == data88); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/foo/garply", NULL); ck_assert(m); ck_assert(m->data == data89); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/bar/foo", NULL); ck_assert(m); ck_assert(m->data == data90); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/bar/qux", NULL); ck_assert(m); ck_assert(m->data == data91); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/bar/quux", NULL); ck_assert(m); ck_assert(m->data == data92); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/bar/corge", NULL); ck_assert(m); ck_assert(m->data == data93); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/bar/grault", NULL); ck_assert(m); ck_assert(m->data == data94); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/bar/garply", NULL); ck_assert(m); ck_assert(m->data == data95); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/qux/foo", NULL); ck_assert(m); ck_assert(m->data == data96); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/qux/bar", NULL); ck_assert(m); ck_assert(m->data == data97); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/qux/quux", NULL); ck_assert(m); ck_assert(m->data == data98); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/qux/corge", NULL); ck_assert(m); ck_assert(m->data == data99); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/qux/grault", NULL); ck_assert(m); ck_assert(m->data == data100); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/qux/garply", NULL); ck_assert(m); ck_assert(m->data == data101); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/quux/foo", NULL); ck_assert(m); ck_assert(m->data == data102); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/quux/bar", NULL); ck_assert(m); ck_assert(m->data == data103); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/quux/qux", NULL); ck_assert(m); ck_assert(m->data == data104); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/quux/corge", NULL); ck_assert(m); ck_assert(m->data == data105); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/quux/grault", NULL); ck_assert(m); ck_assert(m->data == data106); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/quux/garply", NULL); ck_assert(m); ck_assert(m->data == data107); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/corge/foo", NULL); ck_assert(m); ck_assert(m->data == data108); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/corge/bar", NULL); ck_assert(m); ck_assert(m->data == data109); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/corge/qux", NULL); ck_assert(m); ck_assert(m->data == data110); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/corge/quux", NULL); ck_assert(m); ck_assert(m->data == data111); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/corge/grault", NULL); ck_assert(m); ck_assert(m->data == data112); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/corge/garply", NULL); ck_assert(m); ck_assert(m->data == data113); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/grault/foo", NULL); ck_assert(m); ck_assert(m->data == data114); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/grault/bar", NULL); ck_assert(m); ck_assert(m->data == data115); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/grault/qux", NULL); ck_assert(m); ck_assert(m->data == data116); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/grault/quux", NULL); ck_assert(m); ck_assert(m->data == data117); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/grault/corge", NULL); ck_assert(m); ck_assert(m->data == data118); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/grault/garply", NULL); ck_assert(m); ck_assert(m->data == data119); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/garply/foo", NULL); ck_assert(m); ck_assert(m->data == data120); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/garply/bar", NULL); ck_assert(m); ck_assert(m->data == data121); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/garply/qux", NULL); ck_assert(m); ck_assert(m->data == data122); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/garply/quux", NULL); ck_assert(m); ck_assert(m->data == data123); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/garply/corge", NULL); ck_assert(m); ck_assert(m->data == data124); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/baz/garply/grault", NULL); ck_assert(m); ck_assert(m->data == data125); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/foo/bar", NULL); ck_assert(m); ck_assert(m->data == data126); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/foo/baz", NULL); ck_assert(m); ck_assert(m->data == data127); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/foo/quux", NULL); ck_assert(m); ck_assert(m->data == data128); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/foo/corge", NULL); ck_assert(m); ck_assert(m->data == data129); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/foo/grault", NULL); ck_assert(m); ck_assert(m->data == data130); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/foo/garply", NULL); ck_assert(m); ck_assert(m->data == data131); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/bar/foo", NULL); ck_assert(m); ck_assert(m->data == data132); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/bar/baz", NULL); ck_assert(m); ck_assert(m->data == data133); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/bar/quux", NULL); ck_assert(m); ck_assert(m->data == data134); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/bar/corge", NULL); ck_assert(m); ck_assert(m->data == data135); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/bar/grault", NULL); ck_assert(m); ck_assert(m->data == data136); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/bar/garply", NULL); ck_assert(m); ck_assert(m->data == data137); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/baz/foo", NULL); ck_assert(m); ck_assert(m->data == data138); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/baz/bar", NULL); ck_assert(m); ck_assert(m->data == data139); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/baz/quux", NULL); ck_assert(m); ck_assert(m->data == data140); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/baz/corge", NULL); ck_assert(m); ck_assert(m->data == data141); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/baz/grault", NULL); ck_assert(m); ck_assert(m->data == data142); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/baz/garply", NULL); ck_assert(m); ck_assert(m->data == data143); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/quux/foo", NULL); ck_assert(m); ck_assert(m->data == data144); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/quux/bar", NULL); ck_assert(m); ck_assert(m->data == data145); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/quux/baz", NULL); ck_assert(m); ck_assert(m->data == data146); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/quux/corge", NULL); ck_assert(m); ck_assert(m->data == data147); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/quux/grault", NULL); ck_assert(m); ck_assert(m->data == data148); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/quux/garply", NULL); ck_assert(m); ck_assert(m->data == data149); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/corge/foo", NULL); ck_assert(m); ck_assert(m->data == data150); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/corge/bar", NULL); ck_assert(m); ck_assert(m->data == data151); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/corge/baz", NULL); ck_assert(m); ck_assert(m->data == data152); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/corge/quux", NULL); ck_assert(m); ck_assert(m->data == data153); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/corge/grault", NULL); ck_assert(m); ck_assert(m->data == data154); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/corge/garply", NULL); ck_assert(m); ck_assert(m->data == data155); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/grault/foo", NULL); ck_assert(m); ck_assert(m->data == data156); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/grault/bar", NULL); ck_assert(m); ck_assert(m->data == data157); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/grault/baz", NULL); ck_assert(m); ck_assert(m->data == data158); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/grault/quux", NULL); ck_assert(m); ck_assert(m->data == data159); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/grault/corge", NULL); ck_assert(m); ck_assert(m->data == data160); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/grault/garply", NULL); ck_assert(m); ck_assert(m->data == data161); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/garply/foo", NULL); ck_assert(m); ck_assert(m->data == data162); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/garply/bar", NULL); ck_assert(m); ck_assert(m->data == data163); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/garply/baz", NULL); ck_assert(m); ck_assert(m->data == data164); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/garply/quux", NULL); ck_assert(m); ck_assert(m->data == data165); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/garply/corge", NULL); ck_assert(m); ck_assert(m->data == data166); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/qux/garply/grault", NULL); ck_assert(m); ck_assert(m->data == data167); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/foo/bar", NULL); ck_assert(m); ck_assert(m->data == data168); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/foo/baz", NULL); ck_assert(m); ck_assert(m->data == data169); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/foo/qux", NULL); ck_assert(m); ck_assert(m->data == data170); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/foo/corge", NULL); ck_assert(m); ck_assert(m->data == data171); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/foo/grault", NULL); ck_assert(m); ck_assert(m->data == data172); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/foo/garply", NULL); ck_assert(m); ck_assert(m->data == data173); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/bar/foo", NULL); ck_assert(m); ck_assert(m->data == data174); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/bar/baz", NULL); ck_assert(m); ck_assert(m->data == data175); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/bar/qux", NULL); ck_assert(m); ck_assert(m->data == data176); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/bar/corge", NULL); ck_assert(m); ck_assert(m->data == data177); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/bar/grault", NULL); ck_assert(m); ck_assert(m->data == data178); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/bar/garply", NULL); ck_assert(m); ck_assert(m->data == data179); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/baz/foo", NULL); ck_assert(m); ck_assert(m->data == data180); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/baz/bar", NULL); ck_assert(m); ck_assert(m->data == data181); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/baz/qux", NULL); ck_assert(m); ck_assert(m->data == data182); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/baz/corge", NULL); ck_assert(m); ck_assert(m->data == data183); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/baz/grault", NULL); ck_assert(m); ck_assert(m->data == data184); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/baz/garply", NULL); ck_assert(m); ck_assert(m->data == data185); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/qux/foo", NULL); ck_assert(m); ck_assert(m->data == data186); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/qux/bar", NULL); ck_assert(m); ck_assert(m->data == data187); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/qux/baz", NULL); ck_assert(m); ck_assert(m->data == data188); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/qux/corge", NULL); ck_assert(m); ck_assert(m->data == data189); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/qux/grault", NULL); ck_assert(m); ck_assert(m->data == data190); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/qux/garply", NULL); ck_assert(m); ck_assert(m->data == data191); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/corge/foo", NULL); ck_assert(m); ck_assert(m->data == data192); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/corge/bar", NULL); ck_assert(m); ck_assert(m->data == data193); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/corge/baz", NULL); ck_assert(m); ck_assert(m->data == data194); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/corge/qux", NULL); ck_assert(m); ck_assert(m->data == data195); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/corge/grault", NULL); ck_assert(m); ck_assert(m->data == data196); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/corge/garply", NULL); ck_assert(m); ck_assert(m->data == data197); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/grault/foo", NULL); ck_assert(m); ck_assert(m->data == data198); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/grault/bar", NULL); ck_assert(m); ck_assert(m->data == data199); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/grault/baz", NULL); ck_assert(m); ck_assert(m->data == data200); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/grault/qux", NULL); ck_assert(m); ck_assert(m->data == data201); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/grault/corge", NULL); ck_assert(m); ck_assert(m->data == data202); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/grault/garply", NULL); ck_assert(m); ck_assert(m->data == data203); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/garply/foo", NULL); ck_assert(m); ck_assert(m->data == data204); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/garply/bar", NULL); ck_assert(m); ck_assert(m->data == data205); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/garply/baz", NULL); ck_assert(m); ck_assert(m->data == data206); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/garply/qux", NULL); ck_assert(m); ck_assert(m->data == data207); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/garply/corge", NULL); ck_assert(m); ck_assert(m->data == data208); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/quux/garply/grault", NULL); ck_assert(m); ck_assert(m->data == data209); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/foo/bar", NULL); ck_assert(m); ck_assert(m->data == data210); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/foo/baz", NULL); ck_assert(m); ck_assert(m->data == data211); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/foo/qux", NULL); ck_assert(m); ck_assert(m->data == data212); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/foo/quux", NULL); ck_assert(m); ck_assert(m->data == data213); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/foo/grault", NULL); ck_assert(m); ck_assert(m->data == data214); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/foo/garply", NULL); ck_assert(m); ck_assert(m->data == data215); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/bar/foo", NULL); ck_assert(m); ck_assert(m->data == data216); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/bar/baz", NULL); ck_assert(m); ck_assert(m->data == data217); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/bar/qux", NULL); ck_assert(m); ck_assert(m->data == data218); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/bar/quux", NULL); ck_assert(m); ck_assert(m->data == data219); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/bar/grault", NULL); ck_assert(m); ck_assert(m->data == data220); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/bar/garply", NULL); ck_assert(m); ck_assert(m->data == data221); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/baz/foo", NULL); ck_assert(m); ck_assert(m->data == data222); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/baz/bar", NULL); ck_assert(m); ck_assert(m->data == data223); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/baz/qux", NULL); ck_assert(m); ck_assert(m->data == data224); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/baz/quux", NULL); ck_assert(m); ck_assert(m->data == data225); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/baz/grault", NULL); ck_assert(m); ck_assert(m->data == data226); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/baz/garply", NULL); ck_assert(m); ck_assert(m->data == data227); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/qux/foo", NULL); ck_assert(m); ck_assert(m->data == data228); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/qux/bar", NULL); ck_assert(m); ck_assert(m->data == data229); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/qux/baz", NULL); ck_assert(m); ck_assert(m->data == data230); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/qux/quux", NULL); ck_assert(m); ck_assert(m->data == data231); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/qux/grault", NULL); ck_assert(m); ck_assert(m->data == data232); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/qux/garply", NULL); ck_assert(m); ck_assert(m->data == data233); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/quux/foo", NULL); ck_assert(m); ck_assert(m->data == data234); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/quux/bar", NULL); ck_assert(m); ck_assert(m->data == data235); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/quux/baz", NULL); ck_assert(m); ck_assert(m->data == data236); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/quux/qux", NULL); ck_assert(m); ck_assert(m->data == data237); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/quux/grault", NULL); ck_assert(m); ck_assert(m->data == data238); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/quux/garply", NULL); ck_assert(m); ck_assert(m->data == data239); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/grault/foo", NULL); ck_assert(m); ck_assert(m->data == data240); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/grault/bar", NULL); ck_assert(m); ck_assert(m->data == data241); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/grault/baz", NULL); ck_assert(m); ck_assert(m->data == data242); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/grault/qux", NULL); ck_assert(m); ck_assert(m->data == data243); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/grault/quux", NULL); ck_assert(m); ck_assert(m->data == data244); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/grault/garply", NULL); ck_assert(m); ck_assert(m->data == data245); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/garply/foo", NULL); ck_assert(m); ck_assert(m->data == data246); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/garply/bar", NULL); ck_assert(m); ck_assert(m->data == data247); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/garply/baz", NULL); ck_assert(m); ck_assert(m->data == data248); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/garply/qux", NULL); ck_assert(m); ck_assert(m->data == data249); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/garply/quux", NULL); ck_assert(m); ck_assert(m->data == data250); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/corge/garply/grault", NULL); ck_assert(m); ck_assert(m->data == data251); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/foo/bar", NULL); ck_assert(m); ck_assert(m->data == data252); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/foo/baz", NULL); ck_assert(m); ck_assert(m->data == data253); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/foo/qux", NULL); ck_assert(m); ck_assert(m->data == data254); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/foo/quux", NULL); ck_assert(m); ck_assert(m->data == data255); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/foo/corge", NULL); ck_assert(m); ck_assert(m->data == data256); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/foo/garply", NULL); ck_assert(m); ck_assert(m->data == data257); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/bar/foo", NULL); ck_assert(m); ck_assert(m->data == data258); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/bar/baz", NULL); ck_assert(m); ck_assert(m->data == data259); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/bar/qux", NULL); ck_assert(m); ck_assert(m->data == data260); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/bar/quux", NULL); ck_assert(m); ck_assert(m->data == data261); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/bar/corge", NULL); ck_assert(m); ck_assert(m->data == data262); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/bar/garply", NULL); ck_assert(m); ck_assert(m->data == data263); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/baz/foo", NULL); ck_assert(m); ck_assert(m->data == data264); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/baz/bar", NULL); ck_assert(m); ck_assert(m->data == data265); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/baz/qux", NULL); ck_assert(m); ck_assert(m->data == data266); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/baz/quux", NULL); ck_assert(m); ck_assert(m->data == data267); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/baz/corge", NULL); ck_assert(m); ck_assert(m->data == data268); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/baz/garply", NULL); ck_assert(m); ck_assert(m->data == data269); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/qux/foo", NULL); ck_assert(m); ck_assert(m->data == data270); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/qux/bar", NULL); ck_assert(m); ck_assert(m->data == data271); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/qux/baz", NULL); ck_assert(m); ck_assert(m->data == data272); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/qux/quux", NULL); ck_assert(m); ck_assert(m->data == data273); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/qux/corge", NULL); ck_assert(m); ck_assert(m->data == data274); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/qux/garply", NULL); ck_assert(m); ck_assert(m->data == data275); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/quux/foo", NULL); ck_assert(m); ck_assert(m->data == data276); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/quux/bar", NULL); ck_assert(m); ck_assert(m->data == data277); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/quux/baz", NULL); ck_assert(m); ck_assert(m->data == data278); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/quux/qux", NULL); ck_assert(m); ck_assert(m->data == data279); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/quux/corge", NULL); ck_assert(m); ck_assert(m->data == data280); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/quux/garply", NULL); ck_assert(m); ck_assert(m->data == data281); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/corge/foo", NULL); ck_assert(m); ck_assert(m->data == data282); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/corge/bar", NULL); ck_assert(m); ck_assert(m->data == data283); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/corge/baz", NULL); ck_assert(m); ck_assert(m->data == data284); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/corge/qux", NULL); ck_assert(m); ck_assert(m->data == data285); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/corge/quux", NULL); ck_assert(m); ck_assert(m->data == data286); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/corge/garply", NULL); ck_assert(m); ck_assert(m->data == data287); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/garply/foo", NULL); ck_assert(m); ck_assert(m->data == data288); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/garply/bar", NULL); ck_assert(m); ck_assert(m->data == data289); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/garply/baz", NULL); ck_assert(m); ck_assert(m->data == data290); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/garply/qux", NULL); ck_assert(m); ck_assert(m->data == data291); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/garply/quux", NULL); ck_assert(m); ck_assert(m->data == data292); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/grault/garply/corge", NULL); ck_assert(m); ck_assert(m->data == data293); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/foo/bar", NULL); ck_assert(m); ck_assert(m->data == data294); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/foo/baz", NULL); ck_assert(m); ck_assert(m->data == data295); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/foo/qux", NULL); ck_assert(m); ck_assert(m->data == data296); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/foo/quux", NULL); ck_assert(m); ck_assert(m->data == data297); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/foo/corge", NULL); ck_assert(m); ck_assert(m->data == data298); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/foo/grault", NULL); ck_assert(m); ck_assert(m->data == data299); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/bar/foo", NULL); ck_assert(m); ck_assert(m->data == data300); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/bar/baz", NULL); ck_assert(m); ck_assert(m->data == data301); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/bar/qux", NULL); ck_assert(m); ck_assert(m->data == data302); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/bar/quux", NULL); ck_assert(m); ck_assert(m->data == data303); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/bar/corge", NULL); ck_assert(m); ck_assert(m->data == data304); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/bar/grault", NULL); ck_assert(m); ck_assert(m->data == data305); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/baz/foo", NULL); ck_assert(m); ck_assert(m->data == data306); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/baz/bar", NULL); ck_assert(m); ck_assert(m->data == data307); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/baz/qux", NULL); ck_assert(m); ck_assert(m->data == data308); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/baz/quux", NULL); ck_assert(m); ck_assert(m->data == data309); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/baz/corge", NULL); ck_assert(m); ck_assert(m->data == data310); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/baz/grault", NULL); ck_assert(m); ck_assert(m->data == data311); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/qux/foo", NULL); ck_assert(m); ck_assert(m->data == data312); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/qux/bar", NULL); ck_assert(m); ck_assert(m->data == data313); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/qux/baz", NULL); ck_assert(m); ck_assert(m->data == data314); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/qux/quux", NULL); ck_assert(m); ck_assert(m->data == data315); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/qux/corge", NULL); ck_assert(m); ck_assert(m->data == data316); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/qux/grault", NULL); ck_assert(m); ck_assert(m->data == data317); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/quux/foo", NULL); ck_assert(m); ck_assert(m->data == data318); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/quux/bar", NULL); ck_assert(m); ck_assert(m->data == data319); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/quux/baz", NULL); ck_assert(m); ck_assert(m->data == data320); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/quux/qux", NULL); ck_assert(m); ck_assert(m->data == data321); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/quux/corge", NULL); ck_assert(m); ck_assert(m->data == data322); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/quux/grault", NULL); ck_assert(m); ck_assert(m->data == data323); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/corge/foo", NULL); ck_assert(m); ck_assert(m->data == data324); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/corge/bar", NULL); ck_assert(m); ck_assert(m->data == data325); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/corge/baz", NULL); ck_assert(m); ck_assert(m->data == data326); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/corge/qux", NULL); ck_assert(m); ck_assert(m->data == data327); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/corge/quux", NULL); ck_assert(m); ck_assert(m->data == data328); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/corge/grault", NULL); ck_assert(m); ck_assert(m->data == data329); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/grault/foo", NULL); ck_assert(m); ck_assert(m->data == data330); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/grault/bar", NULL); ck_assert(m); ck_assert(m->data == data331); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/grault/baz", NULL); ck_assert(m); ck_assert(m->data == data332); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/grault/qux", NULL); ck_assert(m); ck_assert(m->data == data333); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/grault/quux", NULL); ck_assert(m); ck_assert(m->data == data334); + ck_assert_int_gt(m->endpoint, 0); m = r3_tree_match(n, "/garply/grault/corge", NULL); ck_assert(m); ck_assert(m->data == data335); + ck_assert_int_gt(m->endpoint, 0); r3_tree_free(n);