From 5d12127d4a5843174f516559e39afe580fd1af6c Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Sat, 10 Dec 2022 22:41:52 +0000 Subject: [PATCH] [Test] Add test for the added features --- test/lua/unit/selectors.combined.lua | 45 +++++++++++++++------------- 1 file changed, 25 insertions(+), 20 deletions(-) diff --git a/test/lua/unit/selectors.combined.lua b/test/lua/unit/selectors.combined.lua index 06c5c0fca..31133dbb0 100644 --- a/test/lua/unit/selectors.combined.lua +++ b/test/lua/unit/selectors.combined.lua @@ -33,35 +33,40 @@ context("Selectors test", function() local cases = { ["rcpts + weekend"] = { - selector = "rcpts:addr.take_n(5).lower;time('message', '!%w').in(6, 7).id('weekends')", - expect = { - "nobody@example.com:weekends", - "no-one@example.com:weekends"}}, + selector = "rcpts:addr.take_n(5).lower;time('message', '!%w').in(6, 7).id('weekends')", + expect = { + "nobody@example.com:weekends", + "no-one@example.com:weekends"}}, ["weekend + rcpts"] = { - selector = "time('message', '!%w').in(6, 7).id('weekends');rcpts:addr.take_n(5).lower", - expect = { - "weekends:nobody@example.com", - "weekends:no-one@example.com"}}, + selector = "time('message', '!%w').in(6, 7).id('weekends');rcpts:addr.take_n(5).lower", + expect = { + "weekends:nobody@example.com", + "weekends:no-one@example.com"}}, ["id(rcpt) + rcpts + weekend"] = { - selector = "id('rcpt');rcpts:addr.take_n(5).lower;time('message', '!%w').in(6, 7).id('weekends')", - expect = { - "rcpt:nobody@example.com:weekends", - "rcpt:no-one@example.com:weekends"}}, + selector = "id('rcpt');rcpts:addr.take_n(5).lower;time('message', '!%w').in(6, 7).id('weekends')", + expect = { + "rcpt:nobody@example.com:weekends", + "rcpt:no-one@example.com:weekends"}}, ["id(rcpt) + id(2) rcpts + weekend"] = { - selector = "id('rcpt'); id(2); rcpts:addr.take_n(5).lower; time('message', '!%w').in(6, 7).id('weekends')", - expect = { - "rcpt:2:nobody@example.com:weekends", - "rcpt:2:no-one@example.com:weekends"}}, + selector = "id('rcpt'); id(2); rcpts:addr.take_n(5).lower; time('message', '!%w').in(6, 7).id('weekends')", + expect = { + "rcpt:2:nobody@example.com:weekends", + "rcpt:2:no-one@example.com:weekends"} + }, -- There are two rcpts but only one url in the message -- resulting table size is the size of the smallest table ["id(rcpt) + id(2) + rcpts and urls + weekend"] = { - selector = "id('rcpt'); id(2); rcpts:addr.take_n(5).lower; id('urls'); urls:get_host; time('message', '!%w').in(6, 7).id('weekends')", - expect = { - "rcpt:2:nobody@example.com:urls:example.net:weekends"}}, + selector = "id('rcpt'); id(2); rcpts:addr.take_n(5).lower; id('urls'); urls:get_host; time('message', '!%w').in(6, 7).id('weekends')", + expect = { "rcpt:2:nobody@example.com:urls:example.net:weekends"} + }, + ["url + apply_methods"] = { + selector = "urls.apply_methods('get_host', 'get_path').join_tables('/')", + expect = {"example.net/path"} + }, } for case_name, case in pairs(cases) do @@ -99,7 +104,7 @@ Hello world Content-Type: text/html; charset="utf-8" -http://example.net +http://example.net mail me -- 2.39.5