rem: BOOST_CHECK(parse("a", short_rule).full); BOOST_CHECK(parse("aa", short_rule).length == 1); BOOST_CHECK(parse("aaa", short_rule).length == 1); BOOST_CHECK(parse("aaaa", short_rule).length == 1);
add: BOOST_TEST(parse("a", short_rule).full); BOOST_TEST(parse("aa", short_rule).length == 1); BOOST_TEST(parse("aaa", short_rule).length == 1); BOOST_TEST(parse("aaaa", short_rule).length == 1);
context: void shortest_alternative_parser_test(){    typedef        shortest_alternative<            shortest_alternative<                shortest_alternative<                    strlit<>,                    strlit<> >,                strlit<> >,            strlit<> >    parser_t;    parser_t short_rule =        shortest_d[            str_p("a")            | str_p("aa")            | str_p("aaa")            | str_p("aaaa")        ];    BOOST_CHECK(parse("a", short_rule).full);    BOOST_CHECK(parse("aa", short_rule).length == 1);    BOOST_CHECK(parse("aaa", short_rule).length == 1);    BOOST_CHECK(parse("aaaa", short_rule).length == 1);    short_rule =        shortest_d[            str_p("d")            | str_p("cd")            | str_p("bcd")            | str_p("abcd")        ];    BOOST_CHECK(parse("d", short_rule).full);    BOOST_CHECK(parse("cd", short_rule).full);    BOOST_CHECK(parse("bcd", short_rule).full);    BOOST_CHECK(parse("abcd", short_rule).full);}