]> source.dussan.org Git - rspamd.git/commitdiff
[Test] Add more mime tests
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Wed, 14 Aug 2019 08:05:34 +0000 (09:05 +0100)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Wed, 14 Aug 2019 08:05:34 +0000 (09:05 +0100)
test/lua/unit/task.lua

index 3ec583043161ec5597eb77262d999f002012cbe2..e9fc9e7d510b479dd4c63564eff38ea8cb8b2e05 100644 (file)
@@ -111,4 +111,52 @@ Thank you,
 
     task:destroy()
   end)
+  test("Process mime nesting: message in multipart", function()
+    local msg = table.concat{
+      hdrs, mpart, '\n',
+      '--XXX\n',
+      'Content-Type: message/rfc822\n', '\n', hdrs, body ,
+      '\n--XXX--\n',
+    }
+
+    local res,task = rspamd_task.load_from_string(msg)
+    assert_true(res, "failed to load message")
+    task:process_message()
+    assert_rspamd_table_eq({
+      actual = fun.totable(fun.map(function(u)
+        return u:get_host()
+      end, task:get_urls())),
+
+      expect = {
+        'evil.com', 'example.com'
+      }})
+
+    task:destroy()
+  end)
+  test("Process mime nesting: multipart message in multipart", function()
+    local msg = table.concat{
+      hdrs, mpart, '\n',
+      '--XXX\n',
+      'Content-Type: message/rfc822\n', '\n', hdrs,  mpart, '\n',
+
+      '--XXX\n',
+      body ,
+      '\n--XXX--\n',
+
+      '\n--XXX--\n',
+    }
+    local res,task = rspamd_task.load_from_string(msg)
+    assert_true(res, "failed to load message")
+    task:process_message()
+    assert_rspamd_table_eq({
+      actual = fun.totable(fun.map(function(u)
+        return u:get_host()
+      end, task:get_urls())),
+
+      expect = {
+        'evil.com', 'example.com'
+      }})
+
+    task:destroy()
+  end)
 end)
\ No newline at end of file