diff options
-rw-r--r-- | perllib/FixMyStreet/App/Controller/Contact.pm | 13 | ||||
-rw-r--r-- | t/app/controller/contact.t | 18 |
2 files changed, 30 insertions, 1 deletions
diff --git a/perllib/FixMyStreet/App/Controller/Contact.pm b/perllib/FixMyStreet/App/Controller/Contact.pm index 980636fd0..030f69cc2 100644 --- a/perllib/FixMyStreet/App/Controller/Contact.pm +++ b/perllib/FixMyStreet/App/Controller/Contact.pm @@ -75,7 +75,8 @@ sub submit : Path('submit') : Args(0) { return unless $c->forward('setup_request') && $c->forward('validate') - && $c->forward('prepare_params_for_email'); + && $c->forward('prepare_params_for_email') + && $c->forward('send_email'); } sub determine_contact_type : Private { @@ -149,6 +150,8 @@ sub validate : Private { $c->stash->{field_errors} = \%field_errors; $c->go('index'); } + + return 1; } sub prepare_params_for_email : Private { @@ -204,6 +207,14 @@ sub setup_request : Private { return 1; } +sub send_email : Private { + my ( $self, $c ) = @_; + + $c->stash->{success} = 1; + + return 1; +} + =head1 AUTHOR Struan Donald diff --git a/t/app/controller/contact.t b/t/app/controller/contact.t index a5135c60a..c4bf83613 100644 --- a/t/app/controller/contact.t +++ b/t/app/controller/contact.t @@ -145,4 +145,22 @@ for my $test ( }; } +for my $test ( + { + fields => { + em => 'test@example.com', + name => 'A name', + subject => 'A subject', + message => 'A message', + }, + }, + + ) +{ + subtest 'check email sent correctly' => sub { + $mech->get_ok('/contact'); + $mech->submit_form_ok( { with_fields => $test->{fields} } ); + $mech->content_contains('Thanks for your feedback'); + }; +} done_testing(); |