diff options
author | Matthew Somerville <matthew-github@dracos.co.uk> | 2018-10-12 14:58:26 +0100 |
---|---|---|
committer | Matthew Somerville <matthew-github@dracos.co.uk> | 2018-10-22 15:00:46 +0100 |
commit | c73e8b5485c4016921777b95582bbe92853f5e4c (patch) | |
tree | 415b778c29c8ca6fe723e10e9f9365c1cd666025 /t | |
parent | d4f330c29611ad469bc9bfa5a46ddc9bc25501cb (diff) |
Allow moderation to potentially change photos.
Diffstat (limited to 't')
-rw-r--r-- | t/app/controller/moderate.t | 40 | ||||
-rw-r--r-- | t/app/controller/photo.t | 26 |
2 files changed, 27 insertions, 39 deletions
diff --git a/t/app/controller/moderate.t b/t/app/controller/moderate.t index c3aba0ebb..c2b185cde 100644 --- a/t/app/controller/moderate.t +++ b/t/app/controller/moderate.t @@ -49,11 +49,10 @@ sub create_report { latitude => '51.4129', longitude => '0.007831', user_id => $user2->id, - photo => $mech->get_photo_data, + photo => '74e3362283b6ef0c48686fb0e161da4043bbcc97.jpeg', }); } my $report = create_report(); -my $report2 = create_report(); my $REPORT_URL = '/report/' . $report->id ; @@ -236,31 +235,22 @@ subtest 'Problem moderation' => sub { }; $mech->content_lacks('Posted anonymously', 'sanity check'); +my ($csrf) = $mech->content =~ /meta content="([^"]*)" name="csrf-token"/; -subtest 'Problem 2' => sub { - my $REPORT2_URL = '/report/' . $report2->id ; - $mech->get_ok($REPORT2_URL); - $mech->submit_form_ok({ with_fields => { +subtest 'Edit photos' => sub { + $mech->post_ok('http://www.example.org/moderate/report/' . $report->id, { %problem_prepopulated, - problem_title => 'Good good', - problem_detail => 'Good good improved', - }}); - $mech->base_like( qr{\Q$REPORT2_URL\E} ); - - $report2->discard_changes; - is $report2->title, 'Good good'; - is $report2->detail, 'Good good improved'; - - $mech->submit_form_ok({ with_fields => { + photo1 => 'something-wrong', + token => $csrf, + }); + $mech->post_ok('http://www.example.org/moderate/report/' . $report->id, { %problem_prepopulated, - problem_revert_title => 1, - problem_revert_detail => 1, - }}); - $mech->base_like( qr{\Q$REPORT2_URL\E} ); - - $report2->discard_changes; - is $report2->title, 'Good bad good'; - is $report2->detail, 'Good bad bad bad good bad'; + photo1 => '', + upload_fileid => '', + token => $csrf, + }); + $report->discard_changes; + is $report->photo, undef; }; sub create_update { @@ -268,7 +258,7 @@ sub create_update { user => $user2, name => 'Test User 2', anonymous => 'f', - photo => $mech->get_photo_data, + photo => '74e3362283b6ef0c48686fb0e161da4043bbcc97.jpeg', text => 'update good good bad good', state => 'confirmed', mark_fixed => 0, diff --git a/t/app/controller/photo.t b/t/app/controller/photo.t index e28ee1946..19249611a 100644 --- a/t/app/controller/photo.t +++ b/t/app/controller/photo.t @@ -75,7 +75,7 @@ subtest "Check multiple upload worked" => sub { }; }; -subtest "Check photo uploading URL works" => sub { +subtest "Check photo uploading URL and endpoints work" => sub { my $UPLOAD_DIR = tempdir( CLEANUP => 1 ); # submit initial pc form @@ -95,20 +95,18 @@ subtest "Check photo uploading URL works" => sub { is $mech->content, '{"id":"74e3362283b6ef0c48686fb0e161da4043bbcc97.jpeg"}'; my $image_file = path($UPLOAD_DIR, '74e3362283b6ef0c48686fb0e161da4043bbcc97.jpeg'); ok $image_file->exists, 'File uploaded to temp'; - }; -}; -subtest "Check photo URL endpoints work" => sub { - my $p = FixMyStreet::DB->resultset("Problem")->first; - - $mech->get_ok('/photo/temp.74e3362283b6ef0c48686fb0e161da4043bbcc97.jpeg'); - my $image_file = FixMyStreet->path_to('web/photo/temp.74e3362283b6ef0c48686fb0e161da4043bbcc97.jpeg'); - ok -e $image_file, 'File uploaded to temp'; - $mech->get_ok('/photo/' . $p->id . '.jpeg'); - $image_file = FixMyStreet->path_to('web/photo/' . $p->id . '.jpeg'); - ok -e $image_file, 'File uploaded to temp'; - my $res = $mech->get('/photo/0.jpeg'); - is $res->code, 404, "got 404"; + my $p = FixMyStreet::DB->resultset("Problem")->first; + + $mech->get_ok('/photo/temp.74e3362283b6ef0c48686fb0e161da4043bbcc97.jpeg'); + $image_file = FixMyStreet->path_to('web/photo/temp.74e3362283b6ef0c48686fb0e161da4043bbcc97.jpeg'); + ok -e $image_file, 'File uploaded to temp'; + $mech->get_ok('/photo/' . $p->id . '.jpeg'); + $image_file = FixMyStreet->path_to('web/photo/' . $p->id . '.jpeg'); + ok -e $image_file, 'File uploaded to temp'; + my $res = $mech->get('/photo/0.jpeg'); + is $res->code, 404, "got 404"; + }; }; done_testing(); |