LP 1780660: Add more workstation functions to OpenILS::Utils::TestUtils.
[Evergreen.git] / Open-ILS / src / perlmods / lib / OpenILS / Utils / TestUtils.pm
index 443857c..6d66790 100644 (file)
@@ -8,6 +8,20 @@ use strict; use warnings;
 
 my $apputils = 'OpenILS::Application::AppUtils';
 
+sub find_workstation {
+    my ($self,$name,$lib) = (shift,shift,shift);
+    my $resp = $apputils->simplereq(
+        'open-ils.actor',
+        'open-ils.actor.workstation.list',
+        $self->authtoken,
+        $lib
+    );
+    if ($resp->{$lib}) {
+        return scalar(grep {$_->name() eq $name} @{$resp->{$lib}});
+    }
+    return 0;
+}
+
 sub register_workstation {
     my ($self,$name,$lib) = (shift,shift,shift);
     my $resp = $apputils->simplereq(
@@ -17,6 +31,15 @@ sub register_workstation {
     return $resp;
 }
 
+sub find_or_register_workstation {
+    my ($self,$name,$lib) = (shift,shift,shift);
+    my $workstation = $self->find_workstation($name, $lib);
+    if (!$workstation) {
+       $workstation = $self->register_workstation($name, $lib);
+    }
+    return $workstation;
+}
+
 sub do_checkout {
     my ($self,$args) = (shift,shift);
     my $resp = $apputils->simplereq(