aboutsummaryrefslogtreecommitdiffstats
path: root/t/app/model/user.t
diff options
context:
space:
mode:
Diffstat (limited to 't/app/model/user.t')
-rw-r--r--t/app/model/user.t29
1 files changed, 29 insertions, 0 deletions
diff --git a/t/app/model/user.t b/t/app/model/user.t
index d4115d586..dd8b8ca5d 100644
--- a/t/app/model/user.t
+++ b/t/app/model/user.t
@@ -30,6 +30,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/',