aboutsummaryrefslogtreecommitdiffstats
path: root/t
diff options
context:
space:
mode:
authorMatthew Somerville <matthew-github@dracos.co.uk>2017-07-16 21:52:54 +0100
committerStruan Donald <struan@exo.org.uk>2017-08-09 17:14:49 +0100
commitfe4153e367bcbb74eebed9c8ac0126d94709506c (patch)
tree692cb8c92ccbc894809b89f63d17c028fd026745 /t
parente00c75d7f19bc45879c254ea77dce32df825f3a7 (diff)
Set up translatable body name.
Diffstat (limited to 't')
-rw-r--r--t/app/controller/reports.t19
-rw-r--r--t/roles/translatable.t22
2 files changed, 41 insertions, 0 deletions
diff --git a/t/app/controller/reports.t b/t/app/controller/reports.t
index dd84d3d2e..9f28a6c89 100644
--- a/t/app/controller/reports.t
+++ b/t/app/controller/reports.t
@@ -25,6 +25,16 @@ my @edinburgh_problems = $mech->create_problems_for_body(3, $body_edin_id, 'All
my @westminster_problems = $mech->create_problems_for_body(5, $body_west_id, 'All reports', { category => 'Graffiti' });
my @fife_problems = $mech->create_problems_for_body(15, $body_fife_id, 'All reports', { category => 'Flytipping' });
+my $west_trans = FixMyStreet::DB->resultset('Translation')->find_or_create({
+ tbl => 'body',
+ object_id => $body_west_id,
+ col => 'name',
+ lang => 'de',
+ msgstr => 'De Westminster'
+});
+
+ok $west_trans, 'created westminster translation';
+
is scalar @westminster_problems, 5, 'correct number of westminster problems created';
is scalar @edinburgh_problems, 3, 'correct number of edinburgh problems created';
is scalar @fife_problems, 15, 'correct number of fife problems created';
@@ -267,4 +277,13 @@ subtest "it lists shortlisted reports" => sub {
};
};
+subtest "can use translated body name" => sub {
+ FixMyStreet::override_config {
+ MAPIT_URL => 'http://mapit.uk/',
+ }, sub {
+ $mech->get_ok('/reports/De Westminster');
+ $mech->title_like(qr/Westminster City Council/);
+ };
+};
+
done_testing();
diff --git a/t/roles/translatable.t b/t/roles/translatable.t
new file mode 100644
index 000000000..a33b2d9d0
--- /dev/null
+++ b/t/roles/translatable.t
@@ -0,0 +1,22 @@
+use FixMyStreet::TestMech;
+my $mech = FixMyStreet::TestMech->new;
+
+my $body = FixMyStreet::DB->resultset("Body")->create({ name => 'Dunkirk' });
+
+FixMyStreet::DB->resultset("Translation")->create({
+ lang => "fr",
+ tbl => "body",
+ object_id => $body->id,
+ col => "name",
+ msgstr => "Dunkerque",
+});
+
+is $body->name, "Dunkirk";
+
+FixMyStreet::DB->schema->lang("fr");
+is $body->name, "Dunkerque";
+
+FixMyStreet::DB->schema->lang("de");
+is $body->name, "Dunkirk";
+
+done_testing;