45 CPPUNIT_ASSERT_EQUAL(std::string(
"anonymous"),std::string(t.
name));
49 CPPUNIT_ASSERT_EQUAL(std::string(
"test"),std::string(t.
name));
53 for (
int j = 0; j < 256; ++j)
54 CPPUNIT_ASSERT_EQUAL(
false,t[j]);
58 CPPUNIT_ASSERT_EQUAL(
true,t[
'0']);
59 for (
int j = 0; j < 256; ++j) {
61 CPPUNIT_ASSERT_EQUAL(
false,t[j]);
63 CPPUNIT_ASSERT_EQUAL(
true,t[j]);
74 CPPUNIT_ASSERT_EQUAL(
true,t[
'\0']);
75 CPPUNIT_ASSERT_EQUAL(
true,t[
'0']);
83 CPPUNIT_ASSERT_EQUAL(
true,t[
'0']);
84 CPPUNIT_ASSERT_EQUAL(
true,t[
'5']);
85 CPPUNIT_ASSERT_EQUAL(
true,t[
'9']);
86 CPPUNIT_ASSERT_EQUAL(
false,t[
'a']);
107 for (
int j = 0; j < 256; ++j)
113 for (
int j = 0; j < 256; ++j)
133 CharacterSet sample(
nullptr,
"0123456789aAbBcCdDeEfFz");
optimized set of C chars, with quick membership test and merge support
CharacterSet & addRange(unsigned char low, unsigned char high)
add a list of character ranges, expressed as pairs [low,high], including both ends
CharacterSet & add(const unsigned char c)
add a given character to the character set
static const CharacterSet DIGIT
static const CharacterSet ALPHA
static const CharacterSet HEXDIG
const char * name
optional set label for debugging (default: "anonymous")
static const CharacterSet BIT
CPPUNIT_TEST_SUITE(TestCharacterSet)
void CharacterSetConstants()
void CharacterSetConstruction()
void CharacterSetEqualityOp()
CPPUNIT_TEST(CharacterSetConstruction)
CPPUNIT_TEST(CharacterSetSubtract)
void CharacterSetAddRange()
CPPUNIT_TEST(CharacterSetAdd)
CPPUNIT_TEST(CharacterSetConstants)
void CharacterSetSubtract()
CPPUNIT_TEST(CharacterSetUnion)
CPPUNIT_TEST(CharacterSetEqualityOp)
CPPUNIT_TEST(CharacterSetAddRange)
implements test program's main() function while enabling customization
int run(int argc, char *argv[])
CPPUNIT_TEST_SUITE_REGISTRATION(TestCharacterSet)