7 { # fake test driver (with a submit method)
9 package Business::OnlinePayment::MOCK;
12 use base qw(Business::OnlinePayment);
13 sub submit { my $self = shift; return 1; }
15 $INC{"Business/OnlinePayment/MOCK.pm"} = "testing";
17 use Business::OnlinePayment;
19 my $package = "Business::OnlinePayment";
20 my $fddrv = "preCharge";
23 my $tobj = $package->new("MOCK");
24 $tobj->fraud_detect($fddrv);
28 if ( $@ =~ /One of Net::SSLeay.*?or Crypt::SSLeay/ ) {
29 plan skip_all => "fraud_detect: $@\n";
35 my $obj = $package->new("MOCK");
36 can_ok( $obj, qw(fraud_detect) );
38 # fraud detection failure modes
39 my $fdbog = "__BOGUS_PROCESSOR";
41 is( $obj->fraud_detect($fdbog), $fdbog, "fraud_detect set to '$fdbog'" );
42 eval { $obj->submit; };
45 qr/^Unable to locate fraud_detection /,
46 "fraud_detect with unknown processor croaks"
49 is( $obj->fraud_detect($fddrv), $fddrv, "fraud_detect set to '$fddrv'" );
50 eval { $obj->submit; };
51 like( $@, qr/^missing required /, "fraud_detect($fddrv) missing fields" );
53 # XXX: more test cases needed