diff options
| author | Vincent Richard <[email protected]> | 2005-07-13 00:28:02 +0200 |
|---|---|---|
| committer | Vincent Richard <[email protected]> | 2005-07-13 00:28:02 +0200 |
| commit | 681297e10b666e13cc463f6fbb16236f36c3266c (patch) | |
| tree | 5d2392e2283232ed3475cd9c69e22897b03e8a97 /tests | |
| parent | Added contentHandler::extractRaw(). (diff) | |
| download | vmime-681297e10b666e13cc463f6fbb16236f36c3266c.tar.gz vmime-681297e10b666e13cc463f6fbb16236f36c3266c.zip | |
Reference counting and smart pointers.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/parser/bodyPartTest.cpp | 2 | ||||
| -rw-r--r-- | tests/parser/encoderTest.cpp | 4 | ||||
| -rw-r--r-- | tests/parser/headerTest.cpp | 50 | ||||
| -rw-r--r-- | tests/parser/mediaTypeTest.cpp | 6 | ||||
| -rw-r--r-- | tests/parser/messageIdSequenceTest.cpp | 6 | ||||
| -rw-r--r-- | tests/parser/parameterTest.cpp | 23 | ||||
| -rw-r--r-- | tests/parser/textTest.cpp | 8 |
7 files changed, 53 insertions, 46 deletions
diff --git a/tests/parser/bodyPartTest.cpp b/tests/parser/bodyPartTest.cpp index 87d4c1ba..ffbdefda 100644 --- a/tests/parser/bodyPartTest.cpp +++ b/tests/parser/bodyPartTest.cpp @@ -68,7 +68,7 @@ namespace { vmime::bodyPart p1; p1.getHeader()->getField("Foo")->setValue(vmime::string("bar")); - p1.getBody()->setContents(vmime::stringContentHandler("Baz")); + p1.getBody()->setContents(vmime::create <vmime::stringContentHandler>("Baz")); assert_eq("1", "Foo: bar\r\n\r\nBaz", p1.generate()); } diff --git a/tests/parser/encoderTest.cpp b/tests/parser/encoderTest.cpp index 5d27fffc..55c83f83 100644 --- a/tests/parser/encoderTest.cpp +++ b/tests/parser/encoderTest.cpp @@ -35,7 +35,7 @@ namespace // Encoding helper function static const vmime::string encode(const vmime::string& name, const vmime::string& in, int maxLineLength = 0) { - vmime::encoder* enc = vmime::encoderFactory::getInstance()->create(name); + vmime::ref <vmime::encoder> enc = vmime::encoderFactory::getInstance()->create(name); if (maxLineLength != 0) enc->getProperties()["maxlinelength"] = maxLineLength; @@ -53,7 +53,7 @@ namespace // Decoding helper function static const vmime::string decode(const vmime::string& name, const vmime::string& in, int maxLineLength = 0) { - vmime::encoder* enc = vmime::encoderFactory::getInstance()->create(name); + vmime::ref <vmime::encoder> enc = vmime::encoderFactory::getInstance()->create(name); if (maxLineLength != 0) enc->getProperties()["maxlinelength"] = maxLineLength; diff --git a/tests/parser/headerTest.cpp b/tests/parser/headerTest.cpp index 4ee5b443..83f0409e 100644 --- a/tests/parser/headerTest.cpp +++ b/tests/parser/headerTest.cpp @@ -68,10 +68,10 @@ namespace vmime::header hdr; hdr.parse(""); - vmime::headerField* hf = vmime::headerFieldFactory::getInstance()->create("A", "a"); + vmime::ref <vmime::headerField> hf = vmime::headerFieldFactory::getInstance()->create("A", "a"); hdr.appendField(hf); - std::vector <vmime::headerField*> res = hdr.getFieldList(); + std::vector <vmime::ref <vmime::headerField> > res = hdr.getFieldList(); assert_eq("Count", static_cast <unsigned int>(1), res.size()); assert_eq("First value", "A: a", headerTest::getFieldValue(*res[0])); @@ -82,10 +82,10 @@ namespace vmime::header hdr; hdr.parse("A: a\r\n"); - vmime::headerField* hf = vmime::headerFieldFactory::getInstance()->create("B", "b"); + vmime::ref <vmime::headerField> hf = vmime::headerFieldFactory::getInstance()->create("B", "b"); hdr.appendField(hf); - std::vector <vmime::headerField*> res = hdr.getFieldList(); + std::vector <vmime::ref <vmime::headerField> > res = hdr.getFieldList(); assert_eq("Count", static_cast <unsigned int>(2), res.size()); assert_eq("First value", "A: a", headerTest::getFieldValue(*res[0])); @@ -98,10 +98,10 @@ namespace vmime::header hdr; hdr.parse("A: a\r\nC: c\r\n"); - vmime::headerField* hf = vmime::headerFieldFactory::getInstance()->create("B", "b"); + vmime::ref <vmime::headerField> hf = vmime::headerFieldFactory::getInstance()->create("B", "b"); hdr.insertFieldBefore(hdr.getField("C"), hf); - std::vector <vmime::headerField*> res = hdr.getFieldList(); + std::vector <vmime::ref <vmime::headerField> > res = hdr.getFieldList(); assert_eq("Count", static_cast <unsigned int>(3), res.size()); assert_eq("First value", "A: a", headerTest::getFieldValue(*res[0])); @@ -114,10 +114,10 @@ namespace vmime::header hdr; hdr.parse("A: a\r\nC: c\r\n"); - vmime::headerField* hf = vmime::headerFieldFactory::getInstance()->create("B", "b"); + vmime::ref <vmime::headerField> hf = vmime::headerFieldFactory::getInstance()->create("B", "b"); hdr.insertFieldBefore(1, hf); - std::vector <vmime::headerField*> res = hdr.getFieldList(); + std::vector <vmime::ref <vmime::headerField> > res = hdr.getFieldList(); assert_eq("Count", static_cast <unsigned int>(3), res.size()); assert_eq("First value", "A: a", headerTest::getFieldValue(*res[0])); @@ -131,10 +131,10 @@ namespace vmime::header hdr; hdr.parse("A: a\r\nC: c\r\n"); - vmime::headerField* hf = vmime::headerFieldFactory::getInstance()->create("B", "b"); + vmime::ref <vmime::headerField> hf = vmime::headerFieldFactory::getInstance()->create("B", "b"); hdr.insertFieldAfter(hdr.getField("A"), hf); - std::vector <vmime::headerField*> res = hdr.getFieldList(); + std::vector <vmime::ref <vmime::headerField> > res = hdr.getFieldList(); assert_eq("Count", static_cast <unsigned int>(3), res.size()); assert_eq("First value", "A: a", headerTest::getFieldValue(*res[0])); @@ -147,10 +147,10 @@ namespace vmime::header hdr; hdr.parse("A: a\r\nC: c\r\n"); - vmime::headerField* hf = vmime::headerFieldFactory::getInstance()->create("B", "b"); + vmime::ref <vmime::headerField> hf = vmime::headerFieldFactory::getInstance()->create("B", "b"); hdr.insertFieldAfter(0, hf); - std::vector <vmime::headerField*> res = hdr.getFieldList(); + std::vector <vmime::ref <vmime::headerField> > res = hdr.getFieldList(); assert_eq("Count", static_cast <unsigned int>(3), res.size()); assert_eq("First value", "A: a", headerTest::getFieldValue(*res[0])); @@ -168,13 +168,13 @@ namespace hdr1.removeField(hdr1.getField("B")); hdr2.removeField(1); - std::vector <vmime::headerField*> res1 = hdr1.getFieldList(); + std::vector <vmime::ref <vmime::headerField> > res1 = hdr1.getFieldList(); assert_eq("Count", static_cast <unsigned int>(2), res1.size()); assert_eq("First value", "A: a", headerTest::getFieldValue(*res1[0])); assert_eq("Second value", "C: c", headerTest::getFieldValue(*res1[1])); - std::vector <vmime::headerField*> res2 = hdr2.getFieldList(); + std::vector <vmime::ref <vmime::headerField> > res2 = hdr2.getFieldList(); assert_eq("Count", static_cast <unsigned int>(2), res2.size()); assert_eq("First value", "A: a", headerTest::getFieldValue(*res2[0])); @@ -190,10 +190,10 @@ namespace hdr1.removeField(hdr1.getField("A")); hdr2.removeField(0); - std::vector <vmime::headerField*> res1 = hdr1.getFieldList(); + std::vector <vmime::ref <vmime::headerField> > res1 = hdr1.getFieldList(); assert_eq("Count", static_cast <unsigned int>(0), res1.size()); - std::vector <vmime::headerField*> res2 = hdr2.getFieldList(); + std::vector <vmime::ref <vmime::headerField> > res2 = hdr2.getFieldList(); assert_eq("Count", static_cast <unsigned int>(0), res2.size()); } @@ -207,10 +207,10 @@ namespace hdr1.removeAllFields(); hdr2.removeAllFields(); - std::vector <vmime::headerField*> res1 = hdr1.getFieldList(); + std::vector <vmime::ref <vmime::headerField> > res1 = hdr1.getFieldList(); assert_eq("Count", static_cast <unsigned int>(0), res1.size()); - std::vector <vmime::headerField*> res2 = hdr2.getFieldList(); + std::vector <vmime::ref <vmime::headerField> > res2 = hdr2.getFieldList(); assert_eq("Count", static_cast <unsigned int>(0), res2.size()); } @@ -246,7 +246,7 @@ namespace vmime::header hdr; hdr.parse("B: b\r\nA: a\r\nC: c\r\n"); - vmime::headerField* res = hdr.getFieldAt(2); + vmime::ref <vmime::headerField> res = hdr.getFieldAt(2); assert_eq("Value", "C: c", getFieldValue(*res)); } @@ -257,7 +257,7 @@ namespace 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(); + std::vector <vmime::ref <vmime::headerField> > res = hdr.getFieldList(); assert_eq("Count", static_cast <unsigned int>(4), res.size()); assert_eq("First value", "A: a", headerTest::getFieldValue(*res[0])); @@ -271,7 +271,7 @@ namespace vmime::header hdr; hdr.parse("\r\n"); - std::vector <vmime::headerField*> res = hdr.getFieldList(); + std::vector <vmime::ref <vmime::headerField> > res = hdr.getFieldList(); assert_eq("Count", static_cast <unsigned int>(0), res.size()); } @@ -282,7 +282,7 @@ namespace vmime::header hdr; hdr.parse("A: a\r\nB: b\r\nC: c\r\nB: d\r\n"); - vmime::headerField* res = hdr.findField("B"); + vmime::ref <vmime::headerField> res = hdr.findField("B"); assert_eq("Value", "B: b", getFieldValue(*res)); } @@ -293,7 +293,7 @@ namespace vmime::header hdr; hdr.parse("A: a1\nC: c1\n"); - std::vector <vmime::headerField*> res = hdr.findAllFields("B"); + std::vector <vmime::ref <vmime::headerField> > res = hdr.findAllFields("B"); assert_eq("Count", static_cast <unsigned int>(0), res.size()); } @@ -303,7 +303,7 @@ namespace vmime::header hdr; hdr.parse("A: a1\nB: b1\nB: b2\nC: c1\n"); - std::vector <vmime::headerField*> res = hdr.findAllFields("B"); + std::vector <vmime::ref <vmime::headerField> > res = hdr.findAllFields("B"); assert_eq("Count", static_cast <unsigned int>(2), res.size()); assert_eq("First value", "B: b1", headerTest::getFieldValue(*res[0])); @@ -315,7 +315,7 @@ namespace vmime::header hdr; hdr.parse("A: a1\nB: b1\nB: b2\nC: c1\nC: c3\nC: c2\n"); - std::vector <vmime::headerField*> res = hdr.findAllFields("C"); + std::vector <vmime::ref <vmime::headerField> > res = hdr.findAllFields("C"); assert_eq("Count", static_cast <unsigned int>(3), res.size()); assert_eq("First value", "C: c1", headerTest::getFieldValue(*res[0])); diff --git a/tests/parser/mediaTypeTest.cpp b/tests/parser/mediaTypeTest.cpp index 14e07715..52da8096 100644 --- a/tests/parser/mediaTypeTest.cpp +++ b/tests/parser/mediaTypeTest.cpp @@ -58,10 +58,10 @@ namespace assert_eq("eq2", "sub", t1.getSubType()); assert_true("operator==", t1 == t1); - assert_true("clone", *(t1.clone()) == t1); + assert_true("clone", t1 == *vmime::clone(t1)); - assert_eq("eq3", "type", t1.clone()->getType()); - assert_eq("eq4", "sub", t1.clone()->getSubType()); + assert_eq("eq3", "type", vmime::clone(t1)->getType()); + assert_eq("eq4", "sub", vmime::clone(t1)->getSubType()); vmime::mediaType t2; t2.copyFrom(t1); diff --git a/tests/parser/messageIdSequenceTest.cpp b/tests/parser/messageIdSequenceTest.cpp index b80a34d9..6382adef 100644 --- a/tests/parser/messageIdSequenceTest.cpp +++ b/tests/parser/messageIdSequenceTest.cpp @@ -66,13 +66,13 @@ namespace void testGenerate() { vmime::messageIdSequence s1; - s1.appendMessageId(new vmime::messageId("a", "b")); + s1.appendMessageId(vmime::create <vmime::messageId>("a", "b")); assert_eq("1", "<a@b>", s1.generate()); vmime::messageIdSequence s2; - s2.appendMessageId(new vmime::messageId("a", "b")); - s2.appendMessageId(new vmime::messageId("c", "d")); + s2.appendMessageId(vmime::create <vmime::messageId>("a", "b")); + s2.appendMessageId(vmime::create <vmime::messageId>("c", "d")); assert_eq("2", "<a@b> <c@d>", s2.generate()); } diff --git a/tests/parser/parameterTest.cpp b/tests/parser/parameterTest.cpp index 82d784cd..9b3bd66a 100644 --- a/tests/parser/parameterTest.cpp +++ b/tests/parser/parameterTest.cpp @@ -37,25 +37,32 @@ namespace { private: - vmime::typeAdapter <vmime::string> m_value; + vmime::ref <vmime::typeAdapter <vmime::string> > m_value; public: - parameterizedHeaderField() : headerField("F"), m_value("X") { } + parameterizedHeaderField() + : headerField("F"), + m_value(vmime::create <vmime::typeAdapter <vmime::string> >("X")) + { + } - const vmime::component& getValue() const { return m_value; } - vmime::component& getValue() { return m_value; } + const vmime::component& getValue() const { return *m_value; } + vmime::component& getValue() { return *m_value; } void setValue(const vmime::component&) { /* Do nothing */ } + + const vmime::ref <const vmime::component> getValueImp() const { return m_value; } + vmime::ref <vmime::component> getValueImp() { return m_value; } }; #define PARAM_VALUE(p, n) (p.getParameterAt(n)->getValue().generate()) #define PARAM_NAME(p, n) (p.getParameterAt(n)->getName()) -#define PARAM_CHARSET(p, n) (static_cast <vmime::defaultParameter*> \ - (p.getParameterAt(n))->getValue().getCharset().generate()) -#define PARAM_BUFFER(p, n) (static_cast <vmime::defaultParameter*> \ - (p.getParameterAt(n))->getValue().getBuffer()) +#define PARAM_CHARSET(p, n) ( \ + (p.getParameterAt(n).staticCast <vmime::defaultParameter>())->getValue().getCharset().generate()) +#define PARAM_BUFFER(p, n) ( \ + (p.getParameterAt(n).staticCast <vmime::defaultParameter>())->getValue().getBuffer()) class parameterTest : public suite diff --git a/tests/parser/textTest.cpp b/tests/parser/textTest.cpp index e43080df..54e6c5ea 100644 --- a/tests/parser/textTest.cpp +++ b/tests/parser/textTest.cpp @@ -61,7 +61,7 @@ namespace assert_eq("4.3", w1.getCharset(), t4.getWordAt(0)->getCharset()); vmime::word w2("Other", vmime::charset(vmime::charsets::US_ASCII)); - t4.appendWord(new vmime::word(w2)); + t4.appendWord(vmime::create <vmime::word>(w2)); vmime::text t5(t4); @@ -77,7 +77,7 @@ namespace vmime::text t1("Test: \xa9\xc3"); assert_true("operator==", t1 == t1); - assert_true("clone", *(t1.clone()) == t1); + assert_true("clone", *vmime::clone(t1) == t1); vmime::text t2; t2.copyFrom(t1); @@ -91,7 +91,7 @@ namespace vmime::charset c1("test"); vmime::text t1; - vmime::text::newFromString(s1, c1, &t1); + t1.createFromString(s1, c1); assert_eq("1.1", 1, t1.getWordCount()); assert_eq("1.2", s1, t1.getWordAt(0)->getBuffer()); @@ -104,7 +104,7 @@ namespace vmime::charset c2("test"); vmime::text t2; - vmime::text::newFromString(s2, c2, &t2); + t2.createFromString(s2, c2); assert_eq("2.1", 3, t2.getWordCount()); assert_eq("2.2", s2_1, t2.getWordAt(0)->getBuffer()); |
