diff options
Diffstat (limited to 'framework/src/domain/mime/mimetreeparser/autotests/nodehelpertest.cpp')
-rw-r--r-- | framework/src/domain/mime/mimetreeparser/autotests/nodehelpertest.cpp | 182 |
1 files changed, 3 insertions, 179 deletions
diff --git a/framework/src/domain/mime/mimetreeparser/autotests/nodehelpertest.cpp b/framework/src/domain/mime/mimetreeparser/autotests/nodehelpertest.cpp index 63e9119e..77f31f19 100644 --- a/framework/src/domain/mime/mimetreeparser/autotests/nodehelpertest.cpp +++ b/framework/src/domain/mime/mimetreeparser/autotests/nodehelpertest.cpp | |||
@@ -30,182 +30,6 @@ NodeHelperTest::NodeHelperTest() | |||
30 | 30 | ||
31 | } | 31 | } |
32 | 32 | ||
33 | void NodeHelperTest::testPersistentIndex() | ||
34 | { | ||
35 | NodeHelper helper; | ||
36 | |||
37 | KMime::Content *node = new KMime::Content(); | ||
38 | KMime::Content *node2 = new KMime::Content(); | ||
39 | KMime::Content *node2Extra = new KMime::Content(); | ||
40 | KMime::Content *subNode = new KMime::Content(); | ||
41 | KMime::Content *subsubNode = new KMime::Content(), *subsubNode2 = new KMime::Content(); | ||
42 | KMime::Content *node2ExtraSubNode = new KMime::Content(); | ||
43 | KMime::Content *node2ExtraSubsubNode = new KMime::Content(); | ||
44 | KMime::Content *node2ExtraSubsubNode2 = new KMime::Content(); | ||
45 | KMime::Content *extra = new KMime::Content(), *extra2 = new KMime::Content(); | ||
46 | KMime::Content *subExtra = new KMime::Content(); | ||
47 | KMime::Content *subsubExtra = new KMime::Content(); | ||
48 | KMime::Content *subsubExtraNode = new KMime::Content(); | ||
49 | |||
50 | subNode->addContent(subsubNode); | ||
51 | subNode->addContent(subsubNode2); | ||
52 | node->addContent(subNode); | ||
53 | subsubExtra->addContent(subsubExtraNode); | ||
54 | helper.attachExtraContent(node, extra); | ||
55 | helper.attachExtraContent(node, extra2); | ||
56 | helper.attachExtraContent(subNode, subExtra); | ||
57 | helper.attachExtraContent(subsubNode2, subsubExtra); | ||
58 | |||
59 | // This simulates Opaque S/MIME signed and encrypted message with attachment | ||
60 | // (attachment is node2SubsubNode2) | ||
61 | node2Extra->addContent(node2ExtraSubNode); | ||
62 | node2ExtraSubNode->addContent(node2ExtraSubsubNode); | ||
63 | node2ExtraSubNode->addContent(node2ExtraSubsubNode2); | ||
64 | helper.attachExtraContent(node2, node2Extra); | ||
65 | |||
66 | /* all content has a internal first child, so indexes starts at 2 | ||
67 | * node "" | ||
68 | * -> subNode "2" | ||
69 | * -> subsubNode "2.2" | ||
70 | * -> subsubNode2 "2.3" | ||
71 | * | ||
72 | * node "" | ||
73 | * -> extra "e0" | ||
74 | * -> extra2 "e1" | ||
75 | * | ||
76 | * subNode "2" | ||
77 | * -> subExtra "2:e0" | ||
78 | * | ||
79 | * subsubNode2 "2.3" | ||
80 | * -> subsubExtra "2.3:e0" | ||
81 | * -> subsubExtraNode "2.3:e0:2" | ||
82 | * | ||
83 | * node2 "" | ||
84 | * | ||
85 | * node2 "" | ||
86 | * -> node2Extra "e0" | ||
87 | * -> node2ExtraSubNode "e0:2" | ||
88 | * -> node2ExtraSubsubNode "e0:2.2" | ||
89 | * -> node2ExtraSubsubNode2 "e0:2.3" | ||
90 | */ | ||
91 | |||
92 | QCOMPARE(helper.persistentIndex(node), QStringLiteral("")); | ||
93 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("")), node); | ||
94 | |||
95 | QCOMPARE(helper.persistentIndex(node->contents()[0]), QStringLiteral("1")); | ||
96 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("1")), node->contents()[0]); | ||
97 | |||
98 | QCOMPARE(helper.persistentIndex(subNode), QStringLiteral("2")); | ||
99 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("2")), subNode); | ||
100 | |||
101 | QCOMPARE(helper.persistentIndex(subsubNode), QStringLiteral("2.2")); | ||
102 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("2.2")), subsubNode); | ||
103 | |||
104 | QCOMPARE(helper.persistentIndex(subsubNode2), QStringLiteral("2.3")); | ||
105 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("2.3")), subsubNode2); | ||
106 | |||
107 | QCOMPARE(helper.persistentIndex(extra), QStringLiteral("e0")); | ||
108 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("e0")), extra); | ||
109 | |||
110 | QCOMPARE(helper.persistentIndex(extra2), QStringLiteral("e1")); | ||
111 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("e1")), extra2); | ||
112 | |||
113 | QCOMPARE(helper.persistentIndex(subExtra), QStringLiteral("2:e0")); | ||
114 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("2:e0")), subExtra); | ||
115 | |||
116 | QCOMPARE(helper.persistentIndex(subsubExtra), QStringLiteral("2.3:e0")); | ||
117 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("2.3:e0")), subsubExtra); | ||
118 | |||
119 | QCOMPARE(helper.persistentIndex(subsubExtraNode), QStringLiteral("2.3:e0:2")); | ||
120 | QCOMPARE(helper.contentFromIndex(node, QStringLiteral("2.3:e0:2")), subsubExtraNode); | ||
121 | |||
122 | QCOMPARE(helper.persistentIndex(node2ExtraSubsubNode2), QStringLiteral("e0:2.3")); | ||
123 | QCOMPARE(helper.contentFromIndex(node2, QStringLiteral("e0:2.3")), node2ExtraSubsubNode2); | ||
124 | |||
125 | delete node; | ||
126 | } | ||
127 | |||
128 | void NodeHelperTest::testHREF() | ||
129 | { | ||
130 | NodeHelper helper; | ||
131 | KMime::Message::Ptr msg(new KMime::Message); | ||
132 | QUrl url; | ||
133 | |||
134 | KMime::Content *node = msg->topLevel(); | ||
135 | KMime::Content *subNode = new KMime::Content(); | ||
136 | KMime::Content *subsubNode = new KMime::Content(), *subsubNode2 = new KMime::Content(); | ||
137 | KMime::Content *extra = new KMime::Content(), *extra2 = new KMime::Content(); | ||
138 | KMime::Content *subExtra = new KMime::Content(); | ||
139 | KMime::Content *subsubExtra = new KMime::Content(); | ||
140 | KMime::Content *subsubExtraNode = new KMime::Content(); | ||
141 | |||
142 | subNode->addContent(subsubNode); | ||
143 | subNode->addContent(subsubNode2); | ||
144 | node->addContent(subNode); | ||
145 | subsubExtra->addContent(subsubExtraNode); | ||
146 | helper.attachExtraContent(node, extra); | ||
147 | helper.attachExtraContent(node, extra2); | ||
148 | helper.attachExtraContent(subNode, subExtra); | ||
149 | helper.attachExtraContent(subsubNode2, subsubExtra); | ||
150 | |||
151 | url = QUrl(QStringLiteral("")); | ||
152 | QCOMPARE(helper.fromHREF(msg, url), node); | ||
153 | |||
154 | url = QUrl(QStringLiteral("attachment:e0?place=body")); | ||
155 | QCOMPARE(helper.fromHREF(msg, url), extra); | ||
156 | |||
157 | url = QUrl(QStringLiteral("attachment:2.2?place=body")); | ||
158 | QCOMPARE(helper.fromHREF(msg, url), subsubNode); | ||
159 | |||
160 | url = QUrl(QStringLiteral("attachment:2.3:e0:2?place=body")); | ||
161 | QCOMPARE(helper.fromHREF(msg, url), subsubExtraNode); | ||
162 | |||
163 | QCOMPARE(helper.asHREF(node, QStringLiteral("body")), QStringLiteral("attachment:?place=body")); | ||
164 | QCOMPARE(helper.asHREF(extra, QStringLiteral("body")), QStringLiteral("attachment:e0?place=body")); | ||
165 | QCOMPARE(helper.asHREF(subsubNode, QStringLiteral("body")), QStringLiteral("attachment:2.2?place=body")); | ||
166 | QCOMPARE(helper.asHREF(subsubExtraNode, QStringLiteral("body")), QStringLiteral("attachment:2.3:e0:2?place=body")); | ||
167 | } | ||
168 | |||
169 | void NodeHelperTest::testLocalFiles() | ||
170 | { | ||
171 | NodeHelper helper; | ||
172 | KMime::Message::Ptr msg(new KMime::Message); | ||
173 | |||
174 | KMime::Content *node = msg->topLevel(); | ||
175 | KMime::Content *subNode = new KMime::Content(); | ||
176 | KMime::Content *subsubNode = new KMime::Content(), *subsubNode2 = new KMime::Content(); | ||
177 | KMime::Content *extra = new KMime::Content(), *extra2 = new KMime::Content(); | ||
178 | KMime::Content *subExtra = new KMime::Content(); | ||
179 | KMime::Content *subsubExtra = new KMime::Content(); | ||
180 | KMime::Content *subsubExtraNode = new KMime::Content(); | ||
181 | |||
182 | subNode->addContent(subsubNode); | ||
183 | subNode->addContent(subsubNode2); | ||
184 | node->addContent(subNode); | ||
185 | subsubExtra->addContent(subsubExtraNode); | ||
186 | helper.attachExtraContent(node, extra); | ||
187 | helper.attachExtraContent(node, extra2); | ||
188 | helper.attachExtraContent(subNode, subExtra); | ||
189 | helper.attachExtraContent(subsubNode2, subsubExtra); | ||
190 | |||
191 | // helper.writeNodeToTempFile(node); | ||
192 | // QCOMPARE(helper.fromHREF(msg, helper.tempFileUrlFromNode(node)), node); | ||
193 | // helper.writeNodeToTempFile(subNode); | ||
194 | // QCOMPARE(helper.fromHREF(msg, helper.tempFileUrlFromNode(subNode)), subNode); | ||
195 | // helper.writeNodeToTempFile(subsubNode); | ||
196 | // QCOMPARE(helper.fromHREF(msg, helper.tempFileUrlFromNode(subsubNode)), subsubNode); | ||
197 | // helper.writeNodeToTempFile(subsubNode2); | ||
198 | // QCOMPARE(helper.fromHREF(msg, helper.tempFileUrlFromNode(subsubNode2)), subsubNode2); | ||
199 | // helper.writeNodeToTempFile(extra); | ||
200 | // QCOMPARE(helper.fromHREF(msg, helper.tempFileUrlFromNode(extra)), extra); | ||
201 | // helper.writeNodeToTempFile(subExtra); | ||
202 | // QCOMPARE(helper.fromHREF(msg, helper.tempFileUrlFromNode(subExtra)), subExtra); | ||
203 | // helper.writeNodeToTempFile(subsubExtra); | ||
204 | // QCOMPARE(helper.fromHREF(msg, helper.tempFileUrlFromNode(subsubExtra)), subsubExtra); | ||
205 | // helper.writeNodeToTempFile(subsubExtraNode); | ||
206 | // QCOMPARE(helper.fromHREF(msg, helper.tempFileUrlFromNode(subsubExtraNode)), subsubExtraNode); | ||
207 | } | ||
208 | |||
209 | void NodeHelperTest::testFromAsString() | 33 | void NodeHelperTest::testFromAsString() |
210 | { | 34 | { |
211 | const QString tlSender = QStringLiteral("Foo <foo@example.com>"); | 35 | const QString tlSender = QStringLiteral("Foo <foo@example.com>"); |
@@ -241,12 +65,12 @@ void NodeHelperTest::testFromAsString() | |||
241 | node->addContent(encMsg); | 65 | node->addContent(encMsg); |
242 | encNode->addContent(encSubNode); | 66 | encNode->addContent(encSubNode); |
243 | 67 | ||
244 | helper.attachExtraContent(subNode, subExtra); | 68 | // helper.attachExtraContent(subNode, subExtra); |
245 | helper.attachExtraContent(encSubNode, encSubExtra); | 69 | // helper.attachExtraContent(encSubNode, encSubExtra); |
246 | 70 | ||
247 | QCOMPARE(helper.fromAsString(node), tlSender); | 71 | QCOMPARE(helper.fromAsString(node), tlSender); |
248 | QCOMPARE(helper.fromAsString(subNode), tlSender); | 72 | QCOMPARE(helper.fromAsString(subNode), tlSender); |
249 | QCOMPARE(helper.fromAsString(subExtra), tlSender); | 73 | // QCOMPARE(helper.fromAsString(subExtra), tlSender); |
250 | QEXPECT_FAIL("", "Returning sender of encapsulated message is not yet implemented", Continue); | 74 | QEXPECT_FAIL("", "Returning sender of encapsulated message is not yet implemented", Continue); |
251 | QCOMPARE(helper.fromAsString(encNode), encSender); | 75 | QCOMPARE(helper.fromAsString(encNode), encSender); |
252 | QEXPECT_FAIL("", "Returning sender of encapsulated message is not yet implemented", Continue); | 76 | QEXPECT_FAIL("", "Returning sender of encapsulated message is not yet implemented", Continue); |