File: modifier.t

package info (click to toggle)
libemail-send-perl 2.198-3
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 300 kB
  • ctags: 76
  • sloc: perl: 523; makefile: 8
file content (38 lines) | stat: -rw-r--r-- 916 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/usr/bin/perl -w
use strict;
$^W = 1;

# Does everything load?
use Test::More tests => 5;
use Email::Send       ();
use Email::Send::Test ();

# Clear first, just in case
ok( Email::Send::Test->clear, '->clear returns true' );

my $sender = Email::Send->new({ mailer => 'Test' });
isa_ok( $sender, 'Email::Send' );

my $i = 0;
$sender->message_modifier(sub {
  my ($self, $message, $arg) = @_;
  $message->header_set('X-Whatever' => $i++);
});

my $message = <<'END_MESSAGE';
From: mom@house.example.com
To: dad@house.example.com
Subject: test message

This is the last time I clean up your socks.
END_MESSAGE

$sender->send($message); # once!
$sender->send($message); # twice!

my @emails = Email::Send::Test->emails;

is(@emails, 2, "we've sent two mails");

is($emails[0]->header('X-Whatever'), 0, "first message has X-Whatever: 0");
is($emails[1]->header('X-Whatever'), 1, "second message has X-Whatever: 1");