Continuing with work for the LookupUser method
authorChris Cormack <chrisc@catalyst.net.nz>
Wed, 20 Nov 2013 00:27:34 +0000 (13:27 +1300)
committerChris Cormack <chrisc@catalyst.net.nz>
Wed, 20 Nov 2013 00:27:34 +0000 (13:27 +1300)
So far only works when passed an ID, not a username/password or
cardnumber/password combination

lib/NCIP/Handler.pm
t/NCIP.t
t/NCIP_Handler.t
t/sample_data/LookupUser.xml [new file with mode: 0644]

index a9fab25..30c2ccf 100644 (file)
@@ -18,13 +18,13 @@ package NCIP::Handler;
 
 use Modern::Perl;
 use Object::Tiny qw{ type namespace ils };
-
-use NCIP::Handler::LookupItem;
+use Module::Load;
 
 sub new {
     my $class    = shift;
     my $params   = shift;
     my $subclass = __PACKAGE__ . "::" . $params->{type};
+    load $subclass || die "Can't load module $subclass";
     my $self     = bless {
         type      => $params->{type},
         namespace => $params->{namespace},
index 8a6519f..c5720a5 100644 (file)
--- a/t/NCIP.t
+++ b/t/NCIP.t
@@ -19,7 +19,7 @@ use strict;
 use warnings;
 use File::Slurp;
 
-use Test::More tests => 7;    # last test to print
+use Test::More tests => 9;    # last test to print
 
 use lib 'lib';
 
@@ -51,8 +51,7 @@ ok(
 );
 is( $response, 'LookupItem', 'We got lookupitem with agency' );
 
-my $lookupuser = read_file('t/sample_data/LookupUser.xml');
-
+my $lookupuser = read_file('t/sample_data/LookupUser.xml') || die "Cant open file";
 ok( $response = $ncip->process_request($lookupuser), 'Try looking up a user' );
 is( $response, 'LookupUser', 'We got lookupuser' );
 
index 8c9e44d..b4fb947 100644 (file)
@@ -35,9 +35,8 @@ ok( my $response = $handler->handle() );
 
 $type = 'LookupUser';
 ok(
-    $handler =
-          NCIP::Handler->new( { namespace => $namespace, type => $type } ),
-              'Create new LookupItem handler'
-              );
+    $handler = NCIP::Handler->new( { namespace => $namespace, type => $type } ),
+    'Create new LookupItem handler'
+);
 ok( $response = $handler->handle() );
 
diff --git a/t/sample_data/LookupUser.xml b/t/sample_data/LookupUser.xml
new file mode 100644 (file)
index 0000000..84e9940
--- /dev/null
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r
+\r
+<ns1:NCIPMessage xmlns:ns1="http://www.niso.org/2008/ncip" ns1:version="http://www.niso.org/schemas/ncip/v2_01/ncip_v2_01.xsd">\r
+    <ns1:LookupUser>\r
+\r
+        <ns1:UserId>\r
+            <ns1:UserIdentifierValue>381</ns1:UserIdentifierValue>\r
+        </ns1:UserId>\r
+        \r
+        <ns1:LoanedItemsDesired/>\r
+        <ns1:RequestedItemsDesired/>\r
+        <ns1:UserFiscalAccountDesired/>\r
+\r
+    </ns1:LookupUser>\r
+</ns1:NCIPMessage>\r
+\r