From a4048d62bc088cd685bfd2f1804536bae3ba4733 Mon Sep 17 00:00:00 2001 From: dakkar Date: Sun, 19 Jun 2016 18:39:01 +0100 Subject: SubjectTag role --- t/tests/sietima/role/subject-tag.t | 62 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 t/tests/sietima/role/subject-tag.t (limited to 't') diff --git a/t/tests/sietima/role/subject-tag.t b/t/tests/sietima/role/subject-tag.t new file mode 100644 index 0000000..6dc579a --- /dev/null +++ b/t/tests/sietima/role/subject-tag.t @@ -0,0 +1,62 @@ +#!perl +use strict; +use warnings; +use 5.024; +use lib 't/lib'; +use Test::Sietima; + +my $s = make_sietima( + with_traits => ['SubjectTag'], + subscribers => [ + 'one@users.example.com', + 'two@users.example.com', + ], + subject_tag => 'foo', +); + +subtest 'adding tag' => sub { + test_sending( + sietima => $s, + ); + + is( + [ transport->deliveries ], + array { + item hash { + field email => object { + call [cast=>'Email::MIME'] => object { + call [ header_str => 'Subject' ] => + '[foo] Test Message'; + }; + }; + }; + }, + 'subject tag should be added to all messages', + ); +}; + +subtest 'tag already there' => sub { + test_sending( + sietima => $s, + mail => { + subject => my $subject = "[foo] \N{HEAVY BLACK HEART} test", + }, + ); + + is( + [ transport->deliveries ], + array { + item hash { + field email => object { + call [cast=>'Email::MIME'] => object { + call [ header_str => 'Subject' ] => + $subject; + }; + }; + }; + }, + 'subject tag should not be duplicated', + ); +}; + +done_testing; -- cgit v1.2.3