aboutsummaryrefslogtreecommitdiffstats
path: root/tests/parser/headerTest.cpp
diff options
context:
space:
mode:
authorLaurent Richard <[email protected]>2004-10-25 09:20:09 +0000
committerLaurent Richard <[email protected]>2004-10-25 09:20:09 +0000
commite0fa71b08f7f7c1f8cdf2abdda3741c920a0f530 (patch)
treecada8a756de86cd4b1195b8c66b76a4e95cd6dc5 /tests/parser/headerTest.cpp
parentAdded tests for hasField() and findField() functions. (diff)
downloadvmime-e0fa71b08f7f7c1f8cdf2abdda3741c920a0f530.tar.gz
vmime-e0fa71b08f7f7c1f8cdf2abdda3741c920a0f530.zip
added tests for getFieldCount, isEmpty, getFieldAt, getFieldList functions
Diffstat (limited to 'tests/parser/headerTest.cpp')
-rw-r--r--tests/parser/headerTest.cpp72
1 files changed, 72 insertions, 0 deletions
diff --git a/tests/parser/headerTest.cpp b/tests/parser/headerTest.cpp
index 60684ee6..8122db00 100644
--- a/tests/parser/headerTest.cpp
+++ b/tests/parser/headerTest.cpp
@@ -42,6 +42,68 @@ namespace
assert_eq("Value", true, res);
}
+ // getFieldCount
+ void testgetFieldCount()
+ {
+ vmime::header hdr;
+ hdr.parse("A: a\r\nB: b\r\nC: c\r\nD: d\r\n");
+
+ assert_eq("Value", 4, hdr.getFieldCount());
+ }
+
+ // isEmpty
+ void testIsEmpty1()
+ {
+ vmime::header hdr;
+ hdr.parse("A: a\r\nB: b\r\nC: c\r\n");
+
+ assert_eq("Value", false, hdr.isEmpty());
+ }
+
+ void testIsEmpty2()
+ {
+ vmime::header hdr;
+ hdr.parse("\r\n");
+
+ assert_eq("Value", true, hdr.isEmpty());
+ }
+
+ // getFieldAt
+ void getFieldAt()
+ {
+ vmime::header hdr;
+ hdr.parse("B: b\r\nA: a\r\nC: c\r\n");
+
+ vmime::headerField* res = hdr.getFieldAt(2);
+
+ assert_eq("Value", "C: c", getFieldValue(*res));
+ }
+
+ // getFieldList
+ void testGetFieldList1()
+ {
+ vmime::header hdr;
+ hdr.parse("A: a\r\nB: b1\r\nC: c\r\nB: b2\r\n");
+
+ std::vector <vmime::headerField*> res = hdr.getFieldList();
+
+ assert_eq("Count", (unsigned int) 4, res.size());
+ assert_eq("First value", "A: a", headerTest::getFieldValue(*res[0]));
+ assert_eq("Second value", "B: b1", headerTest::getFieldValue(*res[1]));
+ assert_eq("Third value", "C: c", headerTest::getFieldValue(*res[2]));
+ assert_eq("Thourth value", "B: b2", headerTest::getFieldValue(*res[3]));
+ }
+
+ void testGetFieldList2()
+ {
+ vmime::header hdr;
+ hdr.parse("\r\n");
+
+ std::vector <vmime::headerField*> res = hdr.getFieldList();
+
+ assert_eq("Count", (unsigned int) 0, res.size());
+ }
+
// find function tests
void testFind1()
{
@@ -99,6 +161,16 @@ namespace
add("Has", testcase(this, "Has1", &headerTest::testHas1));
add("Has", testcase(this, "Has2", &headerTest::testHas2));
+ add("GetFieldCount", testcase(this, "GetFieldCount", &headerTest::testgetFieldCount));
+
+ add("IsEmpty", testcase(this, "IsEmpty1", &headerTest::testIsEmpty1));
+ add("IsEmpty", testcase(this, "IsEmpty2", &headerTest::testIsEmpty2));
+
+ add("GetFieldAt", testcase(this, "GetFieldAt", &headerTest::getFieldAt));
+
+ add("GetFieldList", testcase(this, "GetFieldList1", &headerTest::testGetFieldList1));
+ add("GetFieldList", testcase(this, "GetFieldList2", &headerTest::testGetFieldList2));
+
add("Find", testcase(this, "Find1", &headerTest::testFind1));
add("FindAllFields", testcase(this, "FindAllFields1", &headerTest::testFindAllFields1));