diff options
author | Marius Halden <marius.h@lden.org> | 2017-11-03 16:13:59 +0100 |
---|---|---|
committer | Marius Halden <marius.h@lden.org> | 2017-11-03 16:13:59 +0100 |
commit | 42d874db498d0fabae92d0c87acf99054d92391b (patch) | |
tree | d0cf5afdee3d244c4e5da6fe1ab9acba620634df /t/app/model/user.t | |
parent | 19a7c5dda85a47a68040c742791e9cd9d3e52be6 (diff) | |
parent | dc7613329c275cd158fdde8faf1c0e301f5b7202 (diff) |
Merge tag 'v2.2' into fiksgatami-dev
Diffstat (limited to 't/app/model/user.t')
-rw-r--r-- | t/app/model/user.t | 35 |
1 files changed, 29 insertions, 6 deletions
diff --git a/t/app/model/user.t b/t/app/model/user.t index d4115d586..5a9c898a2 100644 --- a/t/app/model/user.t +++ b/t/app/model/user.t @@ -1,8 +1,3 @@ -use strict; -use warnings; - -use Test::More; - use FixMyStreet::TestMech; use FixMyStreet::DB; @@ -30,6 +25,35 @@ is $problem->user->latest_anonymity, 0, "User's last update was not anonyous"; create_update($problem, anonymous => 't'); is $problem->user->latest_anonymity, 1, "User's last update was anonymous"; +subtest "Sign user up for alerts" => sub { + my $user = $problem->user; + + my $alert_exists = $user->alert_for_problem( $problem->id ); + is !defined( $alert_exists ), 1, "No current alerts exist"; + + my $options = { + cobrand => 'default', + lang => 'en-gb', + }; + $user->create_alert($problem->id, $options); + my $alert = $user->alert_for_problem( $problem->id ); + + is defined( $alert ), 1, "User is signed up for alerts"; + is $alert->confirmed, 1, "Alert is confirmed"; + + $alert->delete(); + + $user->alerts->create({ + alert_type => 'new_updates', + parameter => $problem->id, + }); + + $user->create_alert($problem->id, $options); + + my $new_alert = $user->alert_for_problem( $problem->id ); + is $alert->confirmed, 1, "Already created alert is confirmed"; +}; + FixMyStreet::override_config { ALLOWED_COBRANDS => [ { fixmystreet => '.' } ], MAPIT_URL => 'http://mapit.uk/', @@ -40,7 +64,6 @@ FixMyStreet::override_config { }; END { - $mech->delete_user( $problem->user ) if $problem; done_testing(); } |