aboutsummaryrefslogtreecommitdiffstats
path: root/t/open311/endpoint
diff options
context:
space:
mode:
Diffstat (limited to 't/open311/endpoint')
-rw-r--r--t/open311/endpoint/Endpoint1.pm3
-rw-r--r--t/open311/endpoint/mysociety.t5
-rw-r--r--t/open311/endpoint/spark.t2
-rw-r--r--t/open311/endpoint/warwick.t21
4 files changed, 13 insertions, 18 deletions
diff --git a/t/open311/endpoint/Endpoint1.pm b/t/open311/endpoint/Endpoint1.pm
index c4119075c..ae12172b8 100644
--- a/t/open311/endpoint/Endpoint1.pm
+++ b/t/open311/endpoint/Endpoint1.pm
@@ -103,8 +103,7 @@ sub get_service_requests {
my ($self, $args) = @_;
my $service_code = $args->{service_code} or return $self->get_requests;
- # we use ~~ as the service_code arg will be an arrayref like ['POT']
- return $self->filter_requests( sub { shift->service->service_code ~~ $service_code });
+ return $self->filter_requests( sub { my $c = shift->service->service_code; grep { $_ eq $c } @$service_code });
}
sub get_service_request {
diff --git a/t/open311/endpoint/mysociety.t b/t/open311/endpoint/mysociety.t
index c63e03e43..d0ad60602 100644
--- a/t/open311/endpoint/mysociety.t
+++ b/t/open311/endpoint/mysociety.t
@@ -6,12 +6,11 @@ use Test::MockTime ':all';
use Open311::Endpoint;
use Data::Dumper;
-use JSON;
+use JSON::MaybeXS;
use t::open311::endpoint::Endpoint2;
my $endpoint = t::open311::endpoint::Endpoint2->new;
-my $json = JSON->new;
subtest "POST OK" => sub {
diag "Serves as sanity test of subclassing, as well as preparing our data";
@@ -31,7 +30,7 @@ subtest "POST OK" => sub {
ok $res->is_success, 'valid request'
or diag $res->content;
- is_deeply $json->decode($res->content),
+ is_deeply decode_json($res->content),
[ {
"service_notice" => "This is a test service",
"service_request_id" => 0
diff --git a/t/open311/endpoint/spark.t b/t/open311/endpoint/spark.t
index 589f39baf..015876c94 100644
--- a/t/open311/endpoint/spark.t
+++ b/t/open311/endpoint/spark.t
@@ -4,10 +4,8 @@ use Test::More;
use Open311::Endpoint;
use Data::Dumper;
-use JSON;
my $endpoint = Open311::Endpoint->new;
-my $json = JSON->new;
subtest "Spark test" => sub {
my $spark = $endpoint->spark;
diff --git a/t/open311/endpoint/warwick.t b/t/open311/endpoint/warwick.t
index b51c601f3..e5f124c8d 100644
--- a/t/open311/endpoint/warwick.t
+++ b/t/open311/endpoint/warwick.t
@@ -5,9 +5,9 @@ use Test::LongString;
use Test::MockTime ':all';
use Data::Dumper;
-use JSON;
+use JSON::MaybeXS;
-use FixMyStreet::App;
+use FixMyStreet::DB;
use Module::Loaded;
BEGIN { mark_as_loaded('DBD::Oracle') }
@@ -19,7 +19,6 @@ use Open311::PopulateServiceList;
use Open311::GetServiceRequestUpdates;
my $endpoint = t::open311::endpoint::Endpoint_Warwick->new;
-my $json = JSON->new;
subtest "GET Service List" => sub {
my $res = $endpoint->run_test_request( GET => '/services.xml' );
@@ -59,7 +58,7 @@ subtest "POST OK" => sub {
ok $res->is_success, 'valid request'
or diag $res->content;
- is_deeply $json->decode($res->content),
+ is_deeply decode_json($res->content),
[ {
"service_notice" => "Warwickshire Open311 Endpoint",
"service_request_id" => 1001
@@ -141,16 +140,16 @@ subtest "End to end" => sub {
my $WARWICKSHIRE_MAPIT_ID = 2243;
- my $db = FixMyStreet::App->model('DB')->schema;
+ my $db = FixMyStreet::DB->connect;
$db->txn_begin;
- my $body = FixMyStreet::App->model('DB::Body')->find_or_create( {
+ my $body = FixMyStreet::DB->resultset('Body')->find_or_create( {
id => $WARWICKSHIRE_MAPIT_ID,
name => 'Warwickshire County Council',
});
- my $user = FixMyStreet::App->model('DB::User')
+ my $user = FixMyStreet::DB->resultset('User')
->find_or_create( { email => 'test@example.com', name => 'Test User' } );
$body->update({
@@ -175,7 +174,7 @@ subtest "End to end" => sub {
my $bodies = self_rs($body);
- my $p = Open311::PopulateServiceList->new( bodies => $bodies, verbose => 0 );
+ my $p = Open311::PopulateServiceList->new( bodies => $bodies, verbose => 0, schema => $db );
$p->process_bodies;
is $body->contacts->count, 1, 'Categories imported from Open311';
@@ -183,7 +182,7 @@ subtest "End to end" => sub {
set_fixed_time('2014-07-20T15:05:00Z');
- my $problem = FixMyStreet::App->model('DB::Problem')->create({
+ my $problem = FixMyStreet::DB->resultset('Problem')->create({
postcode => 'WC1 1AA',
bodies_str => $WARWICKSHIRE_MAPIT_ID,
areas => ",$WARWICKSHIRE_MAPIT_ID,",
@@ -219,7 +218,7 @@ subtest "End to end" => sub {
# self_rs($problem)->send_reports;
## instead, as we are in a transaction, we'll just delete everything else.
- my $rs = FixMyStreet::App->model('DB::Problem');
+ my $rs = FixMyStreet::DB->resultset('Problem');
$rs->search({ id => { '!=', $problem->id } })->delete;
$rs->send_reports;
};
@@ -242,7 +241,7 @@ subtest "End to end" => sub {
is $problem->state, 'confirmed', 'sanity check status';
- my $updates = Open311::GetServiceRequestUpdates->new( verbose => 1 );
+ my $updates = Open311::GetServiceRequestUpdates->new( verbose => 1, schema => $db );
$updates->fetch;
$problem->discard_changes;