diff options
Diffstat (limited to 't/app/controller/alert_new.t')
-rw-r--r-- | t/app/controller/alert_new.t | 73 |
1 files changed, 36 insertions, 37 deletions
diff --git a/t/app/controller/alert_new.t b/t/app/controller/alert_new.t index 7318d5c65..90f043935 100644 --- a/t/app/controller/alert_new.t +++ b/t/app/controller/alert_new.t @@ -1,5 +1,4 @@ use FixMyStreet::TestMech; -use FixMyStreet::App; use FixMyStreet::Script::Alerts; my $mech = FixMyStreet::TestMech->new; @@ -64,7 +63,7 @@ foreach my $test ( my $type = $test->{type}; my $user = - FixMyStreet::App->model('DB::User') + FixMyStreet::DB->resultset('User') ->find( { email => $test->{email} } ); # we don't want an alert @@ -76,12 +75,12 @@ foreach my $test ( $mech->content_contains( $test->{content} ); $user = - FixMyStreet::App->model('DB::User') + FixMyStreet::DB->resultset('User') ->find( { email => $test->{email} } ); ok $user, 'user created for alert'; - my $alert = FixMyStreet::App->model('DB::Alert')->find( + my $alert = FixMyStreet::DB->resultset('Alert')->find( { user => $user, alert_type => $type, @@ -101,7 +100,7 @@ foreach my $test ( my ($url_token) = $url =~ m{/A/(\S+)}; ok $url, "extracted confirm url '$url'"; - my $token = FixMyStreet::App->model('DB::Token')->find( + my $token = FixMyStreet::DB->resultset('Token')->find( { token => $url_token, scope => 'alert' @@ -121,7 +120,7 @@ foreach my $test ( ($url_token) = $url =~ m{/A/(\S+)}; ok $url_token ne $existing_token, 'sent out a new token'; - $token = FixMyStreet::App->model('DB::Token')->find( + $token = FixMyStreet::DB->resultset('Token')->find( { token => $url_token, scope => 'alert' @@ -135,7 +134,7 @@ foreach my $test ( $mech->content_contains('alert created'); $alert = - FixMyStreet::App->model('DB::Alert')->find( { id => $existing_id, } ); + FixMyStreet::DB->resultset('Alert')->find( { id => $existing_id, } ); ok $alert->confirmed, 'alert set to confirmed'; $mech->delete_user($user); @@ -154,7 +153,7 @@ foreach my $test ( my $user = $mech->create_user_ok('test-new@example.com'); - my $alert = FixMyStreet::App->model('DB::Alert')->find( + my $alert = FixMyStreet::DB->resultset('Alert')->find( { user => $user, alert_type => $type @@ -165,7 +164,7 @@ foreach my $test ( $mech->get_ok( '/alert/subscribe?type=local&rznvy=' . $user->email . '&feed=area:1000:A_Location&token=' . $csrf ); - $alert = FixMyStreet::App->model('DB::Alert')->find( + $alert = FixMyStreet::DB->resultset('Alert')->find( { user => $user, alert_type => $type, @@ -206,7 +205,7 @@ foreach my $test ( $mech->clear_emails_ok; FixMyStreet::override_config { - ALLOWED_COBRANDS => [ { 'fixmystreet' => '.' } ], + ALLOWED_COBRANDS => 'fixmystreet', MAPIT_URL => 'http://mapit.uk/', }, sub { $mech->get_ok('/alert/list?pc=EH11BB'); @@ -214,7 +213,7 @@ foreach my $test ( $mech->set_visible( [ radio => 'council:' . $body->id . ':City_of_Edinburgh' ] ); $mech->click('alert'); - my $alert = FixMyStreet::App->model('DB::Alert')->find( + my $alert = FixMyStreet::DB->resultset('Alert')->find( { user => $user, alert_type => $type, @@ -247,7 +246,7 @@ for my $test ( my $type = $test->{type}; my $user = - FixMyStreet::App->model('DB::User') + FixMyStreet::DB->resultset('User') ->find( { email => $test->{email} } ); # we don't want an alert @@ -257,19 +256,19 @@ for my $test ( } my $abuse = - FixMyStreet::App->model('DB::Abuse') + FixMyStreet::DB->resultset('Abuse') ->find_or_create( { email => $test->{email} } ); $mech->get_ok( $test->{uri} . "&token=$csrf" ); $mech->content_contains( $test->{content} ); $user = - FixMyStreet::App->model('DB::User') + FixMyStreet::DB->resultset('User') ->find( { email => $test->{email} } ); ok $user, 'user created for alert'; - $alert = FixMyStreet::App->model('DB::Alert')->find( + $alert = FixMyStreet::DB->resultset('Alert')->find( { user => $user, alert_type => $type, @@ -310,7 +309,7 @@ subtest "Test two-tier council alerts" => sub { }, ) { FixMyStreet::override_config { - ALLOWED_COBRANDS => [ { 'fixmystreet' => '.' } ], + ALLOWED_COBRANDS => 'fixmystreet', MAPIT_URL => 'http://mapit.uk/', }, sub { $mech->get_ok( '/alert/list?pc=GL502PR' ); @@ -345,7 +344,7 @@ subtest "Test normal alert signups and that alerts are sent" => sub { ) { $mech->get_ok( '/alert' ); FixMyStreet::override_config { - ALLOWED_COBRANDS => [ { 'fixmystreet' => '.' } ], + ALLOWED_COBRANDS => 'fixmystreet', MAPIT_URL => 'http://mapit.uk/', }, sub { $mech->submit_form_ok( { with_fields => { pc => 'EH11BB' } } ); @@ -358,7 +357,7 @@ subtest "Test normal alert signups and that alerts are sent" => sub { my $url = $mech->get_link_from_email; my ($url_token) = $url =~ m{/A/(\S+)}; $mech->clear_emails_ok; - my $token = FixMyStreet::App->model('DB::Token')->find( { token => $url_token, scope => 'alert' } ); + my $token = FixMyStreet::DB->resultset('Token')->find( { token => $url_token, scope => 'alert' } ); $mech->get_ok( $url ); $mech->content_contains('alert created'); } else { @@ -449,14 +448,14 @@ subtest "Test alerts are not sent for no-text updates" => sub { ok $report2, "created test report - $report2_id"; # Must be first - my $alert2 = FixMyStreet::App->model('DB::Alert')->create( { + my $alert2 = FixMyStreet::DB->resultset('Alert')->create( { parameter => $report2_id, alert_type => 'new_updates', user => $user2, } )->confirm; ok $alert2, 'created alert for other user'; - my $alert = FixMyStreet::App->model('DB::Alert')->create( { + my $alert = FixMyStreet::DB->resultset('Alert')->create( { parameter => $report_id, alert_type => 'new_updates', user => $user2, @@ -492,7 +491,7 @@ subtest "Test no marked as confirmed added to alerts" => sub { my $report_id = $report->id; ok $report, "created test report - $report_id"; - my $alert = FixMyStreet::App->model('DB::Alert')->create( { + my $alert = FixMyStreet::DB->resultset('Alert')->create( { parameter => $report_id, alert_type => 'new_updates', user => $user2, @@ -552,7 +551,7 @@ for my $test ( my $report_id = $report->id; ok $report, "created test report - $report_id"; - my $alert = FixMyStreet::App->model('DB::Alert')->create( { + my $alert = FixMyStreet::DB->resultset('Alert')->create( { parameter => $report_id, alert_type => 'new_updates', user => $user2, @@ -597,7 +596,7 @@ subtest "Test signature template is used from cobrand" => sub { my $report_id = $report->id; ok $report, "created test report - $report_id"; - my $alert = FixMyStreet::App->model('DB::Alert')->create( { + my $alert = FixMyStreet::DB->resultset('Alert')->create( { parameter => $report_id, alert_type => 'new_updates', user => $user1, @@ -611,9 +610,9 @@ subtest "Test signature template is used from cobrand" => sub { $mech->clear_emails_ok; FixMyStreet::override_config { MAPIT_URL => 'http://mapit.uk/', - ALLOWED_COBRANDS => [ { 'fixmystreet' => '.' } ], + ALLOWED_COBRANDS => 'fixmystreet', }, sub { - FixMyStreet::App->model('DB::AlertType')->email_alerts(); + FixMyStreet::DB->resultset('AlertType')->email_alerts(); }; my $email = $mech->get_text_body_from_email; @@ -628,9 +627,9 @@ subtest "Test signature template is used from cobrand" => sub { $mech->clear_emails_ok; FixMyStreet::override_config { MAPIT_URL => 'http://mapit.uk/', - ALLOWED_COBRANDS => [ { 'fixmystreet' => '.' } ], + ALLOWED_COBRANDS => 'fixmystreet', }, sub { - FixMyStreet::App->model('DB::AlertType')->email_alerts(); + FixMyStreet::DB->resultset('AlertType')->email_alerts(); }; $email = $mech->get_text_body_from_email; @@ -686,7 +685,7 @@ for my $test ( $alert_params->{whensubscribed} = $dt; $alert_params->{confirmed} = 1; - my $alert_user1 = FixMyStreet::App->model('DB::Alert')->create( $alert_params ); + my $alert_user1 = FixMyStreet::DB->resultset('Alert')->create( $alert_params ); ok $alert_user1, "alert created"; my ($report) = $mech->create_problems_for_body(1, $body->id, 'Testing', { @@ -703,7 +702,7 @@ for my $test ( FixMyStreet::override_config { MAPIT_URL => 'http://mapit.uk/', }, sub { - FixMyStreet::App->model('DB::AlertType')->email_alerts(); + FixMyStreet::DB->resultset('AlertType')->email_alerts(); }; $mech->email_count_is(0); @@ -711,7 +710,7 @@ for my $test ( FixMyStreet::override_config { MAPIT_URL => 'http://mapit.uk/', }, sub { - FixMyStreet::App->model('DB::AlertType')->email_alerts(); + FixMyStreet::DB->resultset('AlertType')->email_alerts(); }; my $email = $mech->get_text_body_from_email; like $email, qr/Alert\s+test\s+for\s+non\s+public\s+reports/, 'alert contains public report'; @@ -736,7 +735,7 @@ subtest 'check new updates alerts for non public reports only go to report owner $mech->create_comment_for_problem($report, $user3, 'Anonymous User', 'This is some more update text', 't', 'confirmed', undef, { confirmed => $r_dt->clone->add( minutes => 8 ) }); - my $alert_user1 = FixMyStreet::App->model('DB::Alert')->create( { + my $alert_user1 = FixMyStreet::DB->resultset('Alert')->create( { user => $user1, alert_type => 'new_updates', parameter => $report->id, @@ -746,10 +745,10 @@ subtest 'check new updates alerts for non public reports only go to report owner ok $alert_user1, "alert created"; $mech->clear_emails_ok; - FixMyStreet::App->model('DB::AlertType')->email_alerts(); + FixMyStreet::DB->resultset('AlertType')->email_alerts(); $mech->email_count_is(0); - my $alert_user2 = FixMyStreet::App->model('DB::Alert')->create( { + my $alert_user2 = FixMyStreet::DB->resultset('Alert')->create( { user => $user2, alert_type => 'new_updates', parameter => $report->id, @@ -758,13 +757,13 @@ subtest 'check new updates alerts for non public reports only go to report owner } ); ok $alert_user2, "alert created"; - FixMyStreet::App->model('DB::AlertType')->email_alerts(); + FixMyStreet::DB->resultset('AlertType')->email_alerts(); my $email = $mech->get_text_body_from_email; like $email, qr/This is some more update text/, 'alert contains update text'; $mech->clear_emails_ok; $report->update( { non_public => 0 } ); - FixMyStreet::App->model('DB::AlertType')->email_alerts(); + FixMyStreet::DB->resultset('AlertType')->email_alerts(); $email = $mech->get_text_body_from_email; like $email, qr/This is some more update text/, 'alert contains update text'; @@ -792,7 +791,7 @@ subtest 'check setting include dates in new updates cobrand option' => sub { my $update = $mech->create_comment_for_problem($report, $user3, 'Anonymous User', 'This is some more update text', 't', 'confirmed', undef, { confirmed => $r_dt }); - my $alert_user1 = FixMyStreet::App->model('DB::Alert')->create( { + my $alert_user1 = FixMyStreet::DB->resultset('Alert')->create( { user => $user1, alert_type => 'new_updates', parameter => $report->id, @@ -803,7 +802,7 @@ subtest 'check setting include dates in new updates cobrand option' => sub { $mech->clear_emails_ok; - FixMyStreet::App->model('DB::AlertType')->email_alerts(); + FixMyStreet::DB->resultset('AlertType')->email_alerts(); my $date_in_alert = Utils::prettify_dt( $update->confirmed ); my $email = $mech->get_text_body_from_email; |