diff options
author | Dave Arter <davea@mysociety.org> | 2017-02-15 17:42:25 +0000 |
---|---|---|
committer | Dave Arter <davea@mysociety.org> | 2017-02-15 17:42:25 +0000 |
commit | 957f2d968c17a34a6fa95bea6cb6a4eace229aa6 (patch) | |
tree | 28ff117ae830534ccd37d3bdc70c8e5dba7f53e9 /t/app/controller/report_inspect.t | |
parent | 54af489f0fe985dfc433f0b8a3ab226a470a6023 (diff) | |
parent | 4d44ea5530a7dc25122e5135c19d89b4cebc5f40 (diff) |
Merge branch 'issues/forcouncils/127-exor-rdi-csv-output'
Diffstat (limited to 't/app/controller/report_inspect.t')
-rw-r--r-- | t/app/controller/report_inspect.t | 36 |
1 files changed, 26 insertions, 10 deletions
diff --git a/t/app/controller/report_inspect.t b/t/app/controller/report_inspect.t index 9888fc0f4..cc98f2b64 100644 --- a/t/app/controller/report_inspect.t +++ b/t/app/controller/report_inspect.t @@ -57,7 +57,7 @@ FixMyStreet::override_config { }; subtest "test basic inspect submission" => sub { - $mech->submit_form_ok({ button => 'save', with_fields => { traffic_information => 'Yes', state => 'Action Scheduled', save_inspected => undef } }); + $mech->submit_form_ok({ button => 'save', with_fields => { traffic_information => 'Yes', state => 'Action Scheduled', include_update => undef } }); $report->discard_changes; is $report->state, 'action scheduled', 'report state changed'; is $report->get_extra_metadata('traffic_information'), 'Yes', 'report data changed'; @@ -65,22 +65,25 @@ FixMyStreet::override_config { subtest "test inspect & instruct submission" => sub { $report->unset_extra_metadata('inspected'); + $report->state('confirmed'); $report->update; - my $reputation = $report->user->get_extra_metadata("reputation") || 0; + $report->inspection_log_entry->delete; + my $reputation = $report->user->get_extra_metadata("reputation"); $mech->get_ok("/report/$report_id"); - $mech->submit_form_ok({ button => 'save', with_fields => { public_update => "This is a public update.", save_inspected => "1" } }); + $mech->submit_form_ok({ button => 'save', with_fields => { public_update => "This is a public update.", include_update => "1", state => 'action scheduled' } }); $report->discard_changes; is $report->comments->first->text, "This is a public update.", 'Update was created'; is $report->get_extra_metadata('inspected'), 1, 'report marked as inspected'; - is $report->user->get_extra_metadata('reputation'), $reputation+1, "User reputation was increased"; + is $report->user->get_extra_metadata('reputation'), $reputation, "User reputation wasn't changed"; }; subtest "test update is required when instructing" => sub { $report->unset_extra_metadata('inspected'); $report->update; + $report->inspection_log_entry->delete; $report->comments->delete_all; $mech->get_ok("/report/$report_id"); - $mech->submit_form_ok({ button => 'save', with_fields => { public_update => undef, save_inspected => "1" } }); + $mech->submit_form_ok({ button => 'save', with_fields => { public_update => undef, include_update => "1" } }); is_deeply $mech->page_errors, [ "Please provide a public update for this report." ], 'errors match'; $report->discard_changes; is $report->comments->count, 0, "Update wasn't created"; @@ -117,7 +120,7 @@ FixMyStreet::override_config { $report->comments->delete_all; $mech->get_ok("/report/$report_id"); - $mech->submit_form_ok({ button => 'save', with_fields => { state => 'Duplicate', duplicate_of => $report2->id, public_update => "This is a duplicate.", save_inspected => "1" } }); + $mech->submit_form_ok({ button => 'save', with_fields => { state => 'Duplicate', duplicate_of => $report2->id, public_update => "This is a duplicate.", include_update => "1" } }); $report->discard_changes; is $report->state, 'duplicate', 'report marked as duplicate'; @@ -136,7 +139,7 @@ FixMyStreet::override_config { state => 'Duplicate', duplicate_of => $report2->id, public_update => $update_text, - save_inspected => "1", + include_update => "1", }}); $report->discard_changes; @@ -178,19 +181,32 @@ FixMyStreet::override_config { ALLOWED_COBRANDS => 'oxfordshire', }, sub { subtest "test negative reputation" => sub { - my $reputation = $report->user->get_extra_metadata("reputation"); + my $reputation = $report->user->get_extra_metadata("reputation") || 0; $mech->get_ok("/report/$report_id"); $mech->submit_form( button => 'remove_from_site' ); $report->discard_changes; is $report->user->get_extra_metadata('reputation'), $reputation-1, "User reputation was decreased"; + $report->update({ state => 'confirmed' }); + }; + + subtest "test positive reputation" => sub { + $report->unset_extra_metadata('inspected'); + $report->update; + $report->inspection_log_entry->delete if $report->inspection_log_entry; + my $reputation = $report->user->get_extra_metadata("reputation") || 0; + $mech->get_ok("/report/$report_id"); + $mech->submit_form_ok({ button => 'save', with_fields => { state => 'action scheduled', include_update => undef } }); + $report->discard_changes; + is $report->get_extra_metadata('inspected'), 1, 'report marked as inspected'; + is $report->user->get_extra_metadata('reputation'), $reputation+1, "User reputation was increased"; }; subtest "Oxfordshire-specific traffic management options are shown" => sub { $report->update({ state => 'confirmed' }); $mech->get_ok("/report/$report_id"); - $mech->submit_form_ok({ button => 'save', with_fields => { traffic_information => 'Signs and Cones', state => 'Action Scheduled', save_inspected => undef } }); + $mech->submit_form_ok({ button => 'save', with_fields => { traffic_information => 'Signs and Cones', state => 'Action Scheduled', include_update => undef } }); $report->discard_changes; is $report->state, 'action scheduled', 'report state changed'; is $report->get_extra_metadata('traffic_information'), 'Signs and Cones', 'report data changed'; @@ -211,7 +227,7 @@ FixMyStreet::override_config { # which should cause it to be resent. We clear the host because # otherwise testing stays on host() above. $mech->clear_host; - $mech->submit_form(button => 'save', with_fields => { category => 'Horses', save_inspected => undef, }); + $mech->submit_form(button => 'save', with_fields => { category => 'Horses', include_update => undef, }); $report->discard_changes; is $report->category, "Horses", "Report in correct category"; |