diff options
author | Daniel Friesel <derf@finalrewind.org> | 2019-05-26 18:16:17 +0200 |
---|---|---|
committer | Daniel Friesel <derf@finalrewind.org> | 2019-05-26 18:16:17 +0200 |
commit | 90824071d70473ad528839ff4be5dd2267669ecb (patch) | |
tree | 443fb32a57cb55bc90bfcd36bbbf675e0a6f8ecb /t | |
parent | 7fe95532c1bc559a9ad2c4b96ec37bd0e30f8598 (diff) |
add journey entry and statistics tests
Diffstat (limited to 't')
-rw-r--r-- | t/02-registration.t | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/t/02-registration.t b/t/02-registration.t index 71783d4..05d21e1 100644 --- a/t/02-registration.t +++ b/t/02-registration.t @@ -201,5 +201,69 @@ $t->post_ok( ); $t->status_is(302)->header_is( location => '/account' ); +$csrf_token + = $t->ua->get('/journey/add')->res->dom->at('input[name=csrf_token]') + ->attr('value'); +$t->post_ok( + '/journey/add' => form => { + csrf_token => $csrf_token, + action => 'save', + train => 'RE 42 11238', + dep_station => 'EMST', + sched_departure => '16.10.2018 17:36', + rt_departure => '16.10.2018 17:36', + arr_station => 'EG', + sched_arrival => '16.10.2018 18:34', + rt_arrival => '16.10.2018 18:34', + } +); +$t->status_is(302)->header_is( location => '/journey/1' ); + +$t->get_ok('/journey/1')->status_is(200)->content_like(qr{M.nster\(Westf\)Hbf}) + ->content_like(qr{Gelsenkirchen Hbf})->content_like(qr{RE 11238}) + ->content_like(qr{Linie 42})->content_like(qr{17:36}) + ->content_like(qr{18:34})->content_like(qr{ca[.] 62 km}) + ->content_like(qr{Luftlinie: 62 km})->content_like(qr{64 km/h}); + +$t->get_ok('/history/2018/10')->status_is(200)->content_like(qr{62 km}) + ->content_like(qr{00:58 Stunden})->content_like(qr{00:00 Stunden}) + ->content_like(qr{Bei Abfahrt: 00:00 Stunden}) + ->content_like(qr{Bei Ankunft: 00:00 Stunden}); + +$t->get_ok('/history/2018')->status_is(200)->content_like(qr{62 km}) + ->content_like(qr{00:58 Stunden})->content_like(qr{00:00 Stunden}) + ->content_like(qr{Bei Abfahrt: 00:00 Stunden}) + ->content_like(qr{Bei Ankunft: 00:00 Stunden}); + +$csrf_token + = $t->ua->get('/journey/add')->res->dom->at('input[name=csrf_token]') + ->attr('value'); +$t->post_ok( + '/journey/add' => form => { + csrf_token => $csrf_token, + action => 'save', + train => 'RE 42 11238', + dep_station => 'EMST', + sched_departure => '16.11.2018 17:36', + rt_departure => '16.11.2018 17:45', + arr_station => 'EG', + sched_arrival => '16.11.2018 18:34', + rt_arrival => '16.11.2018 19:00', + } +); +$t->status_is(302)->header_is( location => '/journey/2' ); + +$t->get_ok('/history/2018/11')->status_is(200)->content_like(qr{62 km}) + ->content_like(qr{01:15 Stunden})->content_like(qr{nach Fahrplan: 00:58}) + ->content_like(qr{00:00 Stunden}) + ->content_like(qr{Bei Abfahrt: 00:09 Stunden}) + ->content_like(qr{Bei Ankunft: 00:26 Stunden}); + +$t->get_ok('/history/2018')->status_is(200)->content_like(qr{124 km}) + ->content_like(qr{02:13 Stunden})->content_like(qr{nach Fahrplan: 01:56}) + ->content_like(qr{00:00 Stunden}) + ->content_like(qr{Bei Abfahrt: 00:09 Stunden}) + ->content_like(qr{Bei Ankunft: 00:26 Stunden}); + $t->app->pg->db->query('drop schema travelynx_test_02 cascade'); done_testing(); |