diff options
author | Dave Arter <davea@mysociety.org> | 2015-12-17 17:07:58 +0000 |
---|---|---|
committer | Dave Arter <davea@mysociety.org> | 2016-03-29 17:49:37 +0100 |
commit | 58a000d3095f0d3d327365af0f6d7bb4178bb5bb (patch) | |
tree | fca4112eb6f9a79031de4473ea721026e6b13b22 /t/app/sendreport/angus.t | |
parent | ecb7e0ff7f75344d313c152a47790b32cbcf32b4 (diff) |
[Angus] SOAP interface/send method for Angus CRM
Diffstat (limited to 't/app/sendreport/angus.t')
-rw-r--r-- | t/app/sendreport/angus.t | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/t/app/sendreport/angus.t b/t/app/sendreport/angus.t new file mode 100644 index 000000000..a19ee483a --- /dev/null +++ b/t/app/sendreport/angus.t @@ -0,0 +1,61 @@ +use strict; +use warnings; + +use FixMyStreet::DB; + +use Test::More; + +use_ok("FixMyStreet::SendReport::Angus"); + +my $u = FixMyStreet::DB->resultset('User')->new( { email => 'test@example.org', name => 'A User' } ); + +my $p = FixMyStreet::DB->resultset('Problem')->new( { + latitude => 1, + longitude => 1, + title => 'title', + detail => 'detail', + user => $u, + id => 1, + name => 'A User', + cobrand => 'fixmystreet', +} ); + +my $angus = FixMyStreet::SendReport::Angus->new(); + +subtest 'parses authentication token correctly' => sub { + my $authxml = <<EOT; + <AuthenticateResponse> + + <AuthenticateResult> + TVRreUxqRTJPQzR5TlRVdU1qSjhNakF4Tmpvd01Ub3lNam94TlRvME16b3pPUT09VGhvdVNoYWx0Tm90UGFzcw== + </AuthenticateResult> + <success> + True + </success> + <message></message> + + </AuthenticateResponse> +EOT +; + is $angus->get_auth_token($authxml), 'TVRreUxqRTJPQzR5TlRVdU1qSjhNakF4Tmpvd01Ub3lNam94TlRvME16b3pPUT09VGhvdVNoYWx0Tm90UGFzcw==', 'token correct'; +}; + +subtest 'parses report external id correctly' => sub { + my $respxml = <<EOT; +<CreateRequestResponse> + + <CreateRequestResult> + <RequestId>7245</RequestId> + </CreateRequestResult> + + <success>True</success> + <message></message> + +</CreateRequestResponse> +EOT +; + is $angus->get_external_id($respxml), '7245', 'external id correct'; +}; + + +done_testing(); |