diff options
Diffstat (limited to 't/app')
-rw-r--r-- | t/app/model/extra.t | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/t/app/model/extra.t b/t/app/model/extra.t index 970efc465..9adfb8f80 100644 --- a/t/app/model/extra.t +++ b/t/app/model/extra.t @@ -164,6 +164,53 @@ subtest 'Get named field values' => sub { is $report->get_extra_field_value("field1"), "value 1", "field1 has correct value"; is $report->get_extra_field_value("field 2"), "this is a test value", "field 2 has correct value"; + +$report->delete; +$user->delete; +}; + +subtest 'Get named fields' => sub { + my $user = $db->resultset('User')->create({ + email => 'test-moderation@example.com', + email_verified => 1, + name => 'Test User' + }); + my $report = $db->resultset('Problem')->create( + { + postcode => 'BR1 3SB', + bodies_str => "", + areas => "", + category => 'Other', + title => 'Good bad good', + detail => 'Good bad bad bad good bad', + used_map => 't', + name => 'Test User 2', + anonymous => 'f', + state => 'confirmed', + lang => 'en-gb', + service => '', + cobrand => 'default', + latitude => '51.4129', + longitude => '0.007831', + user_id => $user->id, + }); + + my @fields = ({ + name => "field1", + description => "This is a test field", + value => "value 1", + }, + { + code => "field 2", + description => "Another test", + value => "this is a test value", + }); + + $report->push_extra_fields(@fields); + + is_deeply $report->get_extra_field(name => "field1"), $fields[0], "field1 has correct value"; + is_deeply $report->get_extra_field(code => "field 2"), $fields[1], "field 2 has correct value"; + is $report->get_extra_field(name => "field 2"), undef, "returns undef if no match"; }; done_testing(); |