HTTP-WebTest
view release on metacpan or search on metacpan
lib/HTTP/WebTest/ReportPlugin.pm view on Meta::CPAN
$self->global_validate_params(qw(mail_addresses mail_server mail_from));
my $mail_addresses = $self->global_test_param('mail_addresses');
my $mail_server = $self->global_test_param('mail_server', 'localhost');
my $mail_from = $self->global_test_param('mail_from');
my $smtp = Net::SMTP->new($mail_server);
die "HTTP::WebTest: Can't create Net::SMTP object"
unless defined $smtp;
my $from = $mail_from || getlogin() || getpwuid($<) || 'nobody';
$self->_smtp_cmd($smtp, 'mail', $from);
$self->_smtp_cmd($smtp, 'to', @$mail_addresses);
$self->_smtp_cmd($smtp, 'data');
$self->_smtp_cmd($smtp, 'datasend', "From: $from\n");
{
my $mail_addresses = join ', ', @$mail_addresses;
$self->_smtp_cmd($smtp, 'datasend', "To: $mail_addresses\n");
}
$self->_smtp_cmd($smtp, 'datasend',
t/05a-email-report.t view on Meta::CPAN
$SMTP->set_true('datasend');
$SMTP->set_true('dataend');
$SMTP->set_true('quit');
$WEBTEST->set_always(num_fail => 0);
$WEBTEST->set_always(num_succeed => 0);
$WEBTEST->set_always(have_succeed => 1);
$GLOBAL_PARAMS{mail_addresses} = ['x@y.z'];
$SMTP->clear;
$REPORT_PLUGIN->test_output(\'TEST OUTPUT');
$REPORT_PLUGIN->_send_email_report;
my $from = getlogin() || getpwuid($<) || 'nobody';
$SMTP->called_pos_ok(1, 'mail', 'Test for MAIL FROM command');
$SMTP->called_args_pos_is(1, 2, $from,
'Test for content of MAIL FROM command');
$SMTP->called_pos_ok(2, 'to', 'Test for RCPT TO command');
$SMTP->called_args_pos_is(2, 2, 'x@y.z',
'Test for content of RCPT TO command');
$SMTP->called_pos_ok(3, 'data', 'Test for DATA command');
$SMTP->called_pos_ok(4, 'datasend', 'Test for From: header');
$SMTP->called_args_pos_is(4, 2, "From: $from\n",
'Test for default From: header');
( run in 0.311 second using v1.01-cache-2.11-cpan-8d75d55dd25 )