LitleOnline 10.1.1 → 11.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG +13 -6
- data/DESCRIPTION +2 -2
- data/LICENSE +1 -1
- data/README.md +8 -8
- data/Rakefile +6 -7
- data/SETUP.md +4 -4
- data/bin/Setup.rb +4 -4
- data/bin/sample_batch_driver.rb +1 -1
- data/bin/sample_driver.rb +1 -1
- data/lib/Communications.rb +5 -5
- data/lib/Configuration.rb +1 -1
- data/lib/LitleBatchRequest.rb +39 -1
- data/lib/LitleListeners.rb +2 -2
- data/lib/LitleOnline.rb +1 -1
- data/lib/LitleOnlineRequest.rb +22 -3
- data/lib/LitleRequest.rb +4 -4
- data/lib/LitleTransaction.rb +156 -47
- data/lib/LitleXmlMapper.rb +8 -1
- data/lib/XMLFields.rb +252 -51
- data/temp.xml +21 -0
- data/test/certification/certTest1_base.rb +52 -52
- data/test/certification/certTest2_authenhanced.rb +20 -20
- data/test/certification/certTest3_authreversal.rb +16 -16
- data/test/certification/certTest4_echeck.rb +18 -12
- data/test/certification/certTest5_token.rb +3 -3
- data/test/certification/certTest_batchAll.rb +9 -1
- data/test/certification/ts_all.rb +1 -1
- data/test/functional/test_activate.rb +34 -5
- data/test/functional/test_activateReversal.rb +23 -7
- data/test/functional/test_auth.rb +126 -17
- data/test/functional/test_authReversal.rb +5 -3
- data/test/functional/test_balanceInquiry.rb +30 -5
- data/test/functional/test_batch.rb +1 -1
- data/test/functional/test_batchStream.rb +1 -1
- data/test/functional/test_cancelSubscription.rb +5 -3
- data/test/functional/test_capture.rb +37 -2
- data/test/functional/test_captureGivenAuth.rb +54 -3
- data/test/functional/test_configuration.rb +1 -1
- data/test/functional/test_createPlan.rb +5 -3
- data/test/functional/test_credit.rb +17 -1
- data/test/functional/test_deactivate.rb +28 -5
- data/test/functional/test_deactivateReversal.rb +21 -7
- data/test/functional/test_depositReversal.rb +30 -18
- data/test/functional/test_echeckCredit.rb +29 -5
- data/test/functional/test_echeckRedeposit.rb +28 -3
- data/test/functional/test_echeckSale.rb +43 -7
- data/test/functional/test_echeckVerification.rb +34 -8
- data/test/functional/test_echeckVoid.rb +2 -2
- data/test/functional/test_forceCapture.rb +36 -8
- data/test/functional/test_fraudCheck.rb +12 -14
- data/test/functional/test_giftCardAuthReversal.rb +72 -0
- data/test/functional/test_giftCardCapture.rb +72 -0
- data/test/functional/test_giftCardCredit.rb +69 -0
- data/test/functional/test_litle_requests.rb +1 -1
- data/test/functional/test_load.rb +29 -5
- data/test/functional/test_loadReversal.rb +21 -7
- data/test/functional/test_override.rb +4 -3
- data/test/functional/test_queryTransaction.rb +24 -18
- data/test/functional/test_refundReversal.rb +21 -7
- data/test/functional/test_sale.rb +86 -9
- data/test/functional/test_token.rb +26 -11
- data/test/functional/test_unload.rb +29 -5
- data/test/functional/test_unloadReversal.rb +21 -7
- data/test/functional/test_updateCardValidationNumOnToken.rb +1 -1
- data/test/functional/test_updatePlan.rb +5 -3
- data/test/functional/test_updateSubscription.rb +5 -3
- data/test/functional/test_wallet.rb +1 -1
- data/test/functional/test_xmlfields.rb +9 -5
- data/test/functional/ts_all.rb +1 -1
- data/test/unit/test_LitleAUBatch.rb +1 -1
- data/test/unit/test_LitleBatchRequest.rb +1 -1
- data/test/unit/test_LitleOnlineRequest.rb +15 -57
- data/test/unit/test_LitleRequest.rb +1 -1
- data/test/unit/test_LitleTransaction.rb +3 -3
- data/test/unit/test_LitleXmlMapper.rb +139 -0
- data/test/unit/test_activate.rb +5 -5
- data/test/unit/test_activateReversal.rb +16 -4
- data/test/unit/test_auth.rb +50 -9
- data/test/unit/test_authReversal.rb +1 -1
- data/test/unit/test_balanceInquiry.rb +3 -3
- data/test/unit/test_cancelSubscription.rb +1 -1
- data/test/unit/test_capture.rb +27 -1
- data/test/unit/test_captureGivenAuth.rb +47 -1
- data/test/unit/test_createPlan.rb +1 -1
- data/test/unit/test_credit.rb +16 -3
- data/test/unit/test_deactivate.rb +20 -1
- data/test/unit/test_deactivateReversal.rb +16 -4
- data/test/unit/test_depositReversal.rb +18 -6
- data/test/unit/test_echeckCredit.rb +20 -1
- data/test/unit/test_echeckRedeposit.rb +16 -1
- data/test/unit/test_echeckSale.rb +20 -1
- data/test/unit/test_echeckVerification.rb +7 -4
- data/test/unit/test_echeckVoid.rb +1 -1
- data/test/unit/test_forceCapture.rb +19 -1
- data/test/unit/test_fraudCheck.rb +1 -1
- data/test/unit/test_giftCardAuthReversal.rb +58 -0
- data/test/unit/test_giftCardCapture.rb +57 -0
- data/test/unit/test_giftCardCredit.rb +57 -0
- data/test/unit/test_load.rb +3 -3
- data/test/unit/test_loadReversal.rb +16 -4
- data/test/unit/test_queryTransaction.rb +5 -22
- data/test/unit/test_refundReversal.rb +16 -4
- data/test/unit/test_sale.rb +90 -5
- data/test/unit/test_token.rb +35 -24
- data/test/unit/test_unload.rb +3 -3
- data/test/unit/test_unloadReversal.rb +16 -4
- data/test/unit/test_updateCardValidationNumOnToken.rb +1 -1
- data/test/unit/test_updatePlan.rb +1 -1
- data/test/unit/test_updateSubscription.rb +1 -1
- data/test/unit/test_wallet.rb +1 -1
- data/test/unit/test_xmlfields.rb +1 -1
- data/test/unit/ts_unit.rb +1 -1
- metadata +18 -10
@@ -0,0 +1,72 @@
|
|
1
|
+
=begin
|
2
|
+
Copyright (c) 2017 Vantiv eCommerce
|
3
|
+
|
4
|
+
Permission is hereby granted, free of charge, to any person
|
5
|
+
obtaining a copy of this software and associated documentation
|
6
|
+
files (the "Software"), to deal in the Software without
|
7
|
+
restriction, including without limitation the rights to use,
|
8
|
+
copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the
|
10
|
+
Software is furnished to do so, subject to the following
|
11
|
+
conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
18
|
+
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
20
|
+
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
21
|
+
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
22
|
+
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
23
|
+
OTHER DEALINGS IN THE SOFTWARE.
|
24
|
+
=end
|
25
|
+
require File.expand_path("../../../lib/LitleOnline",__FILE__)
|
26
|
+
require 'test/unit'
|
27
|
+
|
28
|
+
#test GiftCardCapture Transaction
|
29
|
+
module LitleOnline
|
30
|
+
class TestGiftCardCapture < Test::Unit::TestCase
|
31
|
+
def test_giftCardCapture
|
32
|
+
hash = {
|
33
|
+
'captureAmount'=>'1000',
|
34
|
+
'merchantId' => '101',
|
35
|
+
'version'=>'8.8',
|
36
|
+
'id'=>'test',
|
37
|
+
'reportGroup'=>'Planets',
|
38
|
+
'litleTxnId' =>'5000',
|
39
|
+
'card'=>{
|
40
|
+
'type'=>'GC',
|
41
|
+
'number' =>'400000000000000',
|
42
|
+
'expDate' =>'0150',
|
43
|
+
'pin' => '1234',
|
44
|
+
'cardValidationNum' => '411'
|
45
|
+
},
|
46
|
+
'originalRefCode' => '101',
|
47
|
+
'originalAmount' => '34561',
|
48
|
+
'originalTxnTime' => '2017-01-24T09:00:00',
|
49
|
+
|
50
|
+
}
|
51
|
+
|
52
|
+
response= LitleOnlineRequest.new.giftCardCapture(hash)
|
53
|
+
assert_equal('000', response.giftCardCaptureResponse.response)
|
54
|
+
assert_equal('0', response.giftCardCaptureResponse.giftCardResponse.systemTraceId)
|
55
|
+
end
|
56
|
+
|
57
|
+
def test_simple_error
|
58
|
+
hash = {
|
59
|
+
'merchantId' => '101',
|
60
|
+
'version'=>'8.8',
|
61
|
+
'id'=>'test',
|
62
|
+
'reportGroup'=>'Planets',
|
63
|
+
}
|
64
|
+
|
65
|
+
#Get exceptions
|
66
|
+
exception = assert_raise(RuntimeError){LitleOnlineRequest.new.giftCardCapture(hash)}
|
67
|
+
#Test
|
68
|
+
assert(exception.message =~ /Error validating xml data against the schema/)
|
69
|
+
end
|
70
|
+
|
71
|
+
end
|
72
|
+
end
|
@@ -0,0 +1,69 @@
|
|
1
|
+
=begin
|
2
|
+
Copyright (c) 2017 Vantiv eCommerce
|
3
|
+
|
4
|
+
Permission is hereby granted, free of charge, to any person
|
5
|
+
obtaining a copy of this software and associated documentation
|
6
|
+
files (the "Software"), to deal in the Software without
|
7
|
+
restriction, including without limitation the rights to use,
|
8
|
+
copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the
|
10
|
+
Software is furnished to do so, subject to the following
|
11
|
+
conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
18
|
+
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
20
|
+
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
21
|
+
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
22
|
+
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
23
|
+
OTHER DEALINGS IN THE SOFTWARE.
|
24
|
+
=end
|
25
|
+
require File.expand_path("../../../lib/LitleOnline",__FILE__)
|
26
|
+
require 'test/unit'
|
27
|
+
|
28
|
+
#test GiftCardCapture Transaction
|
29
|
+
module LitleOnline
|
30
|
+
class TestGiftCardCredit < Test::Unit::TestCase
|
31
|
+
def test_giftCardCredit
|
32
|
+
hash = {
|
33
|
+
'id'=>'test',
|
34
|
+
'merchantId' => '101',
|
35
|
+
'version'=>'8.8',
|
36
|
+
'litleTxnId' => '5000',
|
37
|
+
'creditAmount' =>'1000',
|
38
|
+
#'orderId' =>'1230',
|
39
|
+
'card'=>{
|
40
|
+
'type'=>'GC',
|
41
|
+
'number' =>'400000000000000',
|
42
|
+
'expDate' =>'0150',
|
43
|
+
'pin' => '1234',
|
44
|
+
'cardValidationNum' => '411'
|
45
|
+
},
|
46
|
+
'reportGroup'=>'Planets',
|
47
|
+
}
|
48
|
+
|
49
|
+
response= LitleOnlineRequest.new.giftCardCredit(hash)
|
50
|
+
assert_equal('000', response.giftCardCreditResponse.response)
|
51
|
+
assert_equal('0', response.giftCardCreditResponse.giftCardResponse.systemTraceId)
|
52
|
+
end
|
53
|
+
|
54
|
+
def test_simple_error
|
55
|
+
hash = {
|
56
|
+
'merchantId' => '101',
|
57
|
+
'version'=>'8.8',
|
58
|
+
'id'=>'test',
|
59
|
+
'reportGroup'=>'Planets',
|
60
|
+
}
|
61
|
+
|
62
|
+
#Get exceptions
|
63
|
+
exception = assert_raise(RuntimeError){LitleOnlineRequest.new.giftCardCredit(hash)}
|
64
|
+
#Test
|
65
|
+
assert(exception.message =~ /Error validating xml data against the schema/)
|
66
|
+
end
|
67
|
+
|
68
|
+
end
|
69
|
+
end
|
@@ -1,5 +1,5 @@
|
|
1
1
|
=begin
|
2
|
-
Copyright (c)
|
2
|
+
Copyright (c) 2017 Vantiv eCommerce
|
3
3
|
|
4
4
|
Permission is hereby granted, free of charge, to any person
|
5
5
|
obtaining a copy of this software and associated documentation
|
@@ -39,7 +39,7 @@ def test_simple_happy
|
|
39
39
|
'amount' =>'500',
|
40
40
|
'orderSource' =>'ecommerce',
|
41
41
|
'card'=>{
|
42
|
-
'type'=>'
|
42
|
+
'type'=>'GC',
|
43
43
|
'number' =>'4100000000000001',
|
44
44
|
'expDate' =>'1210'
|
45
45
|
}
|
@@ -59,7 +59,7 @@ def test_simple_happy
|
|
59
59
|
'orderId' =>'1001',
|
60
60
|
'orderSource' =>'ecommerce',
|
61
61
|
'card'=>{
|
62
|
-
'type'=>'
|
62
|
+
'type'=>'GC',
|
63
63
|
'number' =>'4100000000000001',
|
64
64
|
'expDate' =>'1210'
|
65
65
|
}
|
@@ -77,8 +77,32 @@ def test_simple_happy
|
|
77
77
|
'amount' =>'500',
|
78
78
|
}
|
79
79
|
|
80
|
-
|
81
|
-
|
80
|
+
#Get exceptions
|
81
|
+
exception = assert_raise(RuntimeError){LitleOnlineRequest.new.load_request(hash)}
|
82
|
+
#Test
|
83
|
+
assert(exception.message =~ /Error validating xml data against the schema/)
|
84
|
+
end
|
85
|
+
|
86
|
+
def test_GiftCardCardType_NotPresent
|
87
|
+
hash = {
|
88
|
+
'merchantId' => '101',
|
89
|
+
'version'=>'8.8',
|
90
|
+
'id' =>'test',
|
91
|
+
'reportGroup'=>'Planets',
|
92
|
+
'amount' =>'500',
|
93
|
+
'orderId' =>'1001',
|
94
|
+
'orderSource' =>'ecommerce',
|
95
|
+
'card'=>{
|
96
|
+
'type'=>'VI',
|
97
|
+
'number' =>'4100000000000001',
|
98
|
+
'expDate' =>'1210'
|
99
|
+
}
|
100
|
+
}
|
101
|
+
|
102
|
+
#Get exceptions
|
103
|
+
exception = assert_raise(RuntimeError){LitleOnlineRequest.new.load_request(hash)}
|
104
|
+
#Test
|
105
|
+
assert(exception.message =~ /Error validating xml data against the schema/)
|
82
106
|
end
|
83
107
|
end
|
84
108
|
end
|
@@ -1,5 +1,5 @@
|
|
1
1
|
=begin
|
2
|
-
Copyright (c)
|
2
|
+
Copyright (c) 2017 Vantiv eCommerce
|
3
3
|
|
4
4
|
Permission is hereby granted, free of charge, to any person
|
5
5
|
obtaining a copy of this software and associated documentation
|
@@ -35,11 +35,23 @@ def test_simple
|
|
35
35
|
'version'=>'8.8',
|
36
36
|
'id'=>'test',
|
37
37
|
'reportGroup'=>'Planets',
|
38
|
-
'litleTxnId' =>'5000'
|
39
|
-
|
38
|
+
'litleTxnId' =>'5000',
|
39
|
+
'card'=>{
|
40
|
+
'type'=>'GC',
|
41
|
+
'number' =>'400000000000001',
|
42
|
+
'expDate' =>'0150',
|
43
|
+
'pin' => '1234',
|
44
|
+
'cardValidationNum' => '411'
|
45
|
+
},
|
46
|
+
'originalRefCode' => '101',
|
47
|
+
'originalAmount' => '34561',
|
48
|
+
'originalTxnTime' => '2017-01-24T09:00:00',
|
49
|
+
'originalSystemTraceId' => '33',
|
50
|
+
'originalSequenceNumber' => '111111',
|
51
|
+
}
|
40
52
|
|
41
|
-
response= LitleOnlineRequest.new.
|
42
|
-
assert_equal('
|
53
|
+
response= LitleOnlineRequest.new.deposit_reversal(hash)
|
54
|
+
assert_equal('000', response.depositReversalResponse.response)
|
43
55
|
end
|
44
56
|
|
45
57
|
|
@@ -50,8 +62,10 @@ def test_simple
|
|
50
62
|
'reportGroup'=>'Planets',
|
51
63
|
}
|
52
64
|
|
53
|
-
|
54
|
-
|
65
|
+
#Get exceptions
|
66
|
+
exception = assert_raise(RuntimeError){LitleOnlineRequest.new.load_reversal(hash)}
|
67
|
+
#Test
|
68
|
+
assert(exception.message =~ /Error validating xml data against the schema/)
|
55
69
|
end
|
56
70
|
end
|
57
71
|
end
|
@@ -13,7 +13,7 @@ module LitleOnline
|
|
13
13
|
'amount' =>'500',
|
14
14
|
'orderSource' =>'ecommerce',
|
15
15
|
'card'=>{
|
16
|
-
'type'=>'
|
16
|
+
'type'=>'GC',
|
17
17
|
'number' =>'4100000000000001',
|
18
18
|
'expDate' =>'1210'
|
19
19
|
}
|
@@ -21,6 +21,7 @@ module LitleOnline
|
|
21
21
|
response= LitleOnlineRequest.new.activate(hash)
|
22
22
|
assert_equal('Default Report Group', response.activateResponse.reportGroup)
|
23
23
|
end
|
24
|
+
|
24
25
|
def test_override_withoutLocal
|
25
26
|
hash = {
|
26
27
|
'merchantId' => '101',
|
@@ -30,7 +31,7 @@ module LitleOnline
|
|
30
31
|
'amount' =>'500',
|
31
32
|
'orderSource' =>'ecommerce',
|
32
33
|
'card'=>{
|
33
|
-
'type'=>'
|
34
|
+
'type'=>'GC',
|
34
35
|
'number' =>'4100000000000001',
|
35
36
|
'expDate' =>'1210'
|
36
37
|
}
|
@@ -51,7 +52,7 @@ module LitleOnline
|
|
51
52
|
'amount' =>'500',
|
52
53
|
'orderSource' =>'ecommerce',
|
53
54
|
'card'=>{
|
54
|
-
'type'=>'
|
55
|
+
'type'=>'GC',
|
55
56
|
'number' =>'4100000000000001',
|
56
57
|
'expDate' =>'1210'
|
57
58
|
}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
=begin
|
2
|
-
Copyright (c)
|
2
|
+
Copyright (c) 2017 Vantiv eCommerce
|
3
3
|
|
4
4
|
Permission is hereby granted, free of charge, to any person
|
5
5
|
obtaining a copy of this software and associated documentation
|
@@ -38,7 +38,7 @@ module LitleOnline
|
|
38
38
|
'origActionType' => 'A',
|
39
39
|
'transactionId'=>'123456',
|
40
40
|
'orderId'=>'65347567',
|
41
|
-
'origAccountNumber' => '4000000000000001'
|
41
|
+
#'origAccountNumber' => '4000000000000001'
|
42
42
|
}
|
43
43
|
response= LitleOnlineRequest.new.query_Transaction(hash)
|
44
44
|
assert_equal('000', response.queryTransactionResponse.response)
|
@@ -52,11 +52,10 @@ module LitleOnline
|
|
52
52
|
'reportGroup'=>'Some RG',
|
53
53
|
'customerId' => '038945',
|
54
54
|
'origId' => '834262',
|
55
|
-
'origId' => '834262',
|
56
55
|
'origActionType' => '',
|
57
56
|
'transactionId'=>'123456',
|
58
57
|
'orderId'=>'65347567',
|
59
|
-
'origAccountNumber' => '4000000000000001'
|
58
|
+
#'origAccountNumber' => '4000000000000001'
|
60
59
|
}
|
61
60
|
response= LitleOnlineRequest.new.query_Transaction(hash)
|
62
61
|
assert('000', response.queryTransactionResponse.response)
|
@@ -72,10 +71,12 @@ module LitleOnline
|
|
72
71
|
'origActionType' => 'A',
|
73
72
|
'transactionId'=>'123456',
|
74
73
|
'orderId'=>'65347567',
|
75
|
-
'origAccountNumber' => '4000000000000001'
|
74
|
+
#'origAccountNumber' => '4000000000000001'
|
76
75
|
}
|
77
|
-
|
78
|
-
|
76
|
+
#Get exceptions
|
77
|
+
exception = assert_raise(RuntimeError){LitleOnlineRequest.new.query_Transaction(hash)}
|
78
|
+
#Test
|
79
|
+
assert(exception.message =~ /Error validating xml data against the schema/)
|
79
80
|
end
|
80
81
|
|
81
82
|
def test_queryTransaction_no_accttype
|
@@ -88,10 +89,12 @@ module LitleOnline
|
|
88
89
|
'origId' => '834262',
|
89
90
|
'transactionId'=>'123456',
|
90
91
|
'orderId'=>'65347567',
|
91
|
-
'origAccountNumber' => '4000000000000001'
|
92
|
+
#'origAccountNumber' => '4000000000000001'
|
92
93
|
}
|
93
|
-
|
94
|
-
|
94
|
+
#Get exceptions
|
95
|
+
exception = assert_raise(RuntimeError){LitleOnlineRequest.new.query_Transaction(hash)}
|
96
|
+
#Test
|
97
|
+
assert(exception.message =~ /Error validating xml data against the schema/)
|
95
98
|
end
|
96
99
|
|
97
100
|
def test_queryTransaction_invalid_values
|
@@ -102,14 +105,15 @@ module LitleOnline
|
|
102
105
|
'reportGroup'=>'Some RG',
|
103
106
|
'customerId' => '038945',
|
104
107
|
'origId' => '834262',
|
105
|
-
'origId' => '834262',
|
106
108
|
'origActionType' => 'AAA',
|
107
109
|
'transactionId'=>'123456',
|
108
110
|
'orderId'=>'65347567',
|
109
|
-
'origAccountNumber' => '4000000000000001'
|
111
|
+
#'origAccountNumber' => '4000000000000001'
|
110
112
|
}
|
111
|
-
|
112
|
-
|
113
|
+
#Get exceptions
|
114
|
+
exception = assert_raise(RuntimeError){LitleOnlineRequest.new.query_Transaction(hash)}
|
115
|
+
#Test
|
116
|
+
assert(exception.message =~ /Error validating xml data against the schema/)
|
113
117
|
end
|
114
118
|
|
115
119
|
def test_queryTransaction_missing_attributes
|
@@ -120,10 +124,12 @@ module LitleOnline
|
|
120
124
|
'customerId' => '038945',
|
121
125
|
'origActionType' => 'A',
|
122
126
|
'transactionId'=>'123456',
|
123
|
-
'origAccountNumber' => '4000000000000001'
|
127
|
+
#'origAccountNumber' => '4000000000000001'
|
124
128
|
}
|
125
|
-
|
126
|
-
|
129
|
+
#Get exceptions
|
130
|
+
exception = assert_raise(RuntimeError){LitleOnlineRequest.new.query_Transaction(hash)}
|
131
|
+
#Test
|
132
|
+
assert(exception.message =~ /Error validating xml data against the schema/)
|
127
133
|
end
|
128
134
|
|
129
135
|
def test_queryTransaction_unavailable_response
|
@@ -137,7 +143,7 @@ module LitleOnline
|
|
137
143
|
'origActionType' => 'A',
|
138
144
|
'transactionId'=>'123456',
|
139
145
|
'orderId'=>'65347567',
|
140
|
-
'origAccountNumber' => '4000000000000001'
|
146
|
+
#'origAccountNumber' => '4000000000000001'
|
141
147
|
}
|
142
148
|
response= LitleOnlineRequest.new.query_Transaction(hash)
|
143
149
|
assert_equal('152', response.queryTransactionUnavailableResponse.response)
|
@@ -1,5 +1,5 @@
|
|
1
1
|
=begin
|
2
|
-
Copyright (c)
|
2
|
+
Copyright (c) 2017 Vantiv eCommerce
|
3
3
|
|
4
4
|
Permission is hereby granted, free of charge, to any person
|
5
5
|
obtaining a copy of this software and associated documentation
|
@@ -35,11 +35,23 @@ def test_simple
|
|
35
35
|
'version'=>'8.8',
|
36
36
|
'id'=>'test',
|
37
37
|
'reportGroup'=>'Planets',
|
38
|
-
'litleTxnId' =>'5000'
|
39
|
-
|
38
|
+
'litleTxnId' =>'5000',
|
39
|
+
'card'=>{
|
40
|
+
'type'=>'GC',
|
41
|
+
'number' =>'400000000000001',
|
42
|
+
'expDate' =>'0150',
|
43
|
+
'pin' => '1234',
|
44
|
+
'cardValidationNum' => '411'
|
45
|
+
},
|
46
|
+
'originalRefCode' => '101',
|
47
|
+
'originalAmount' => '34561',
|
48
|
+
'originalTxnTime' => '2017-01-24T09:00:00',
|
49
|
+
'originalSystemTraceId' => '33',
|
50
|
+
'originalSequenceNumber' => '111111',
|
51
|
+
}
|
40
52
|
|
41
|
-
response= LitleOnlineRequest.new.
|
42
|
-
assert_equal('
|
53
|
+
response= LitleOnlineRequest.new.deposit_reversal(hash)
|
54
|
+
assert_equal('000', response.depositReversalResponse.response)
|
43
55
|
end
|
44
56
|
|
45
57
|
|
@@ -50,8 +62,10 @@ def test_simple
|
|
50
62
|
'reportGroup'=>'Planets',
|
51
63
|
}
|
52
64
|
|
53
|
-
|
54
|
-
|
65
|
+
#Get exceptions
|
66
|
+
exception = assert_raise(RuntimeError){LitleOnlineRequest.new.refund_reversal(hash)}
|
67
|
+
#Test
|
68
|
+
assert(exception.message =~ /Error validating xml data against the schema/)
|
55
69
|
end
|
56
70
|
end
|
57
71
|
end
|
@@ -1,5 +1,5 @@
|
|
1
1
|
=begin
|
2
|
-
Copyright (c)
|
2
|
+
Copyright (c) 2017 Vantiv eCommerce
|
3
3
|
|
4
4
|
Permission is hereby granted, free of charge, to any person
|
5
5
|
obtaining a copy of this software and associated documentation
|
@@ -110,8 +110,10 @@ module LitleOnline
|
|
110
110
|
'number' =>'4100000000000002',
|
111
111
|
'expDate' =>'1210'
|
112
112
|
}}
|
113
|
-
|
114
|
-
|
113
|
+
#Get exceptions
|
114
|
+
exception = assert_raise(RuntimeError){LitleOnlineRequest.new.sale(hash)}
|
115
|
+
#Test
|
116
|
+
assert(exception.message =~ /Error validating xml data against the schema/)
|
115
117
|
end
|
116
118
|
|
117
119
|
def test_no_report_group
|
@@ -206,8 +208,10 @@ module LitleOnline
|
|
206
208
|
'number' =>'4100000000000002',
|
207
209
|
'expDate' =>'1210'
|
208
210
|
}}
|
209
|
-
|
210
|
-
|
211
|
+
#Get exceptions
|
212
|
+
exception = assert_raise(RuntimeError){LitleOnlineRequest.new.sale(hash)}
|
213
|
+
#Test
|
214
|
+
assert(exception.message =~ /Error validating xml data against the schema/)
|
211
215
|
end
|
212
216
|
|
213
217
|
def test_no_amount
|
@@ -224,8 +228,10 @@ module LitleOnline
|
|
224
228
|
'number' =>'4100000000000002',
|
225
229
|
'expDate' =>'1210'
|
226
230
|
}}
|
227
|
-
|
228
|
-
|
231
|
+
#Get exceptions
|
232
|
+
exception = assert_raise(RuntimeError){LitleOnlineRequest.new.sale(hash)}
|
233
|
+
#Test
|
234
|
+
assert(exception.message =~ /Error validating xml data against the schema/)
|
229
235
|
end
|
230
236
|
|
231
237
|
def test_no_order_source
|
@@ -242,8 +248,10 @@ module LitleOnline
|
|
242
248
|
'number' =>'4100000000000002',
|
243
249
|
'expDate' =>'1210'
|
244
250
|
}}
|
245
|
-
|
246
|
-
|
251
|
+
#Get exceptions
|
252
|
+
exception = assert_raise(RuntimeError){LitleOnlineRequest.new.sale(hash)}
|
253
|
+
#Test
|
254
|
+
assert(exception.message =~ /Error validating xml data against the schema/)
|
247
255
|
end
|
248
256
|
|
249
257
|
def test_simple_sale_with_mpos
|
@@ -326,5 +334,74 @@ module LitleOnline
|
|
326
334
|
response= LitleOnlineRequest.new.sale(hash)
|
327
335
|
assert_equal 'Valid Format', response.message
|
328
336
|
end
|
337
|
+
|
338
|
+
def test_simple_sale_with_processingType
|
339
|
+
hash = {
|
340
|
+
'merchantId' => '101',
|
341
|
+
'id' => 'test',
|
342
|
+
'version'=>'8.8',
|
343
|
+
'reportGroup'=>'Planets',
|
344
|
+
'litleTxnId'=>'123456',
|
345
|
+
'orderId'=>'12344',
|
346
|
+
'amount'=>'106',
|
347
|
+
'orderSource'=>'ecommerce',
|
348
|
+
'processingType'=>'initialInstallment',
|
349
|
+
'card'=>{
|
350
|
+
'type'=>'VI',
|
351
|
+
'number' =>'4100000000000002',
|
352
|
+
'expDate' =>'1210'
|
353
|
+
}
|
354
|
+
}
|
355
|
+
response= LitleOnlineRequest.new.sale(hash)
|
356
|
+
assert_equal 'Valid Format', response.message
|
357
|
+
end
|
358
|
+
|
359
|
+
def test_simple_sale_with_originalNetworkTransactionId_originalTransactionAmount
|
360
|
+
hash = {
|
361
|
+
'merchantId' => '101',
|
362
|
+
'id' => 'test',
|
363
|
+
'version'=>'8.8',
|
364
|
+
'reportGroup'=>'Planets',
|
365
|
+
'litleTxnId'=>'123456',
|
366
|
+
'orderId'=>'12344',
|
367
|
+
'amount'=>'106',
|
368
|
+
'orderSource'=>'ecommerce',
|
369
|
+
'card'=>{
|
370
|
+
'type'=>'VI',
|
371
|
+
'number' =>'4100000000000002',
|
372
|
+
'expDate' =>'1210'
|
373
|
+
},
|
374
|
+
'originalNetworkTransactionId'=>'98765432109876543210',
|
375
|
+
'originalTransactionAmount'=>'7001'
|
376
|
+
}
|
377
|
+
response= LitleOnlineRequest.new.sale(hash)
|
378
|
+
assert_equal 'Valid Format', response.message
|
379
|
+
assert_equal('63225578415568556365452427825', response.saleResponse.networkTransactionId)
|
380
|
+
end
|
381
|
+
|
382
|
+
def test_simple_sale_with_sepaDirectDebit
|
383
|
+
hash = {
|
384
|
+
'merchantId' => '101',
|
385
|
+
'id' => 'test',
|
386
|
+
'version'=>'8.8',
|
387
|
+
'reportGroup'=>'Planets',
|
388
|
+
'litleTxnId'=>'123456',
|
389
|
+
'orderId'=>'12344',
|
390
|
+
'amount'=>'106',
|
391
|
+
'orderSource'=>'ecommerce',
|
392
|
+
'sepaDirectDebit'=> {
|
393
|
+
'mandateProvider'=>'Merchant',
|
394
|
+
'sequenceType'=>'FirstRecurring',
|
395
|
+
'iban'=>'123456789123456789'
|
396
|
+
}}
|
397
|
+
response= LitleOnlineRequest.new.sale(hash)
|
398
|
+
assert_equal 'Valid Format', response.message
|
399
|
+
assert_equal('http://redirect.url.vantiv.com', response.saleResponse.sepaDirectDebitResponse.redirectUrl)
|
400
|
+
assert_equal('jj2d1d372osmmt7tb8epm0a99q', response.saleResponse.sepaDirectDebitResponse.redirectToken)
|
401
|
+
assert_equal('1BADA58', response.saleResponse.sepaDirectDebitResponse.mandateReference)
|
402
|
+
end
|
403
|
+
|
404
|
+
|
405
|
+
|
329
406
|
end
|
330
407
|
end
|