Skip to content

Commit 5bd880f

Browse files
authored
Litle: Add tests for network tokenization (activemerchant#5145)
Summary: ------------------------------ Add unit and remote tests for network token transactions [SER-1270](https://spreedly.atlassian.net/browse/SER-1270) Remote Test: ------------------------------ Finished in 88.332434 seconds. 60 tests, 261 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed Unit Test: ------------------------------ Finished in 45.844644 seconds. 5931 tests, 79847 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications 100% passed RuboCop: ------------------------------ 798 files inspected, no offenses detected
1 parent 23169a5 commit 5bd880f

File tree

2 files changed

+53
-0
lines changed

2 files changed

+53
-0
lines changed

test/remote/gateways/remote_litle_test.rb

+35
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,18 @@ def setup
7676
payment_cryptogram: 'BwABBJQ1AgAAAAAgJDUCAAAAAAA='
7777
}
7878
)
79+
80+
@decrypted_network_token = NetworkTokenizationCreditCard.new(
81+
{
82+
source: :network_token,
83+
month: '02',
84+
year: '2050',
85+
brand: 'master',
86+
number: '5112010000000000',
87+
payment_cryptogram: 'BwABBJQ1AgAAAAAgJDUCAAAAAAA='
88+
}
89+
)
90+
7991
@check = check(
8092
name: 'Tom Black',
8193
routing_number: '011075150',
@@ -260,6 +272,12 @@ def test_successful_purchase_with_google_pay
260272
assert_equal 'Approved', response.message
261273
end
262274

275+
def test_successful_purchase_with_network_token
276+
assert response = @gateway.purchase(10100, @decrypted_network_token)
277+
assert_success response
278+
assert_equal 'Approved', response.message
279+
end
280+
263281
def test_successful_purchase_with_level_two_data_visa
264282
options = @options.merge(
265283
level_2_data: {
@@ -597,6 +615,12 @@ def test_authorize_and_capture_with_stored_credential_cit_card_on_file
597615
assert_equal 'Approved', capture.message
598616
end
599617

618+
def test_authorize_with_network_token
619+
assert response = @gateway.authorize(10100, @decrypted_network_token)
620+
assert_success response
621+
assert_equal 'Approved', response.message
622+
end
623+
600624
def test_purchase_with_stored_credential_cit_card_on_file_non_ecommerce
601625
credit_card = CreditCard.new(@credit_card_hash.merge(
602626
number: '4457000800000002',
@@ -872,4 +896,15 @@ def test_echeck_scrubbing
872896
assert_scrubbed(@gateway.options[:login], transcript)
873897
assert_scrubbed(@gateway.options[:password], transcript)
874898
end
899+
900+
def test_network_token_scrubbing
901+
transcript = capture_transcript(@gateway) do
902+
@gateway.purchase(10010, @decrypted_network_token, @options)
903+
end
904+
transcript = @gateway.scrub(transcript)
905+
assert_scrubbed(@decrypted_network_token.number, transcript)
906+
assert_scrubbed(@decrypted_network_token.payment_cryptogram, transcript)
907+
assert_scrubbed(@gateway.options[:login], transcript)
908+
assert_scrubbed(@gateway.options[:password], transcript)
909+
end
875910
end

test/unit/gateways/litle_test.rb

+18
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,16 @@ def setup
4242
payment_cryptogram: 'BwABBJQ1AgAAAAAgJDUCAAAAAAA='
4343
}
4444
)
45+
@decrypted_network_token = NetworkTokenizationCreditCard.new(
46+
{
47+
source: :network_token,
48+
month: '02',
49+
year: '2050',
50+
brand: 'master',
51+
number: '5112010000000000',
52+
payment_cryptogram: 'BwABBJQ1AgAAAAAgJDUCAAAAAAA='
53+
}
54+
)
4555
@amount = 100
4656
@options = {}
4757
@check = check(
@@ -364,6 +374,14 @@ def test_add_google_pay_order_source
364374
end.respond_with(successful_purchase_response)
365375
end
366376

377+
def test_add_network_token_order_source
378+
stub_comms do
379+
@gateway.purchase(@amount, @decrypted_network_token)
380+
end.check_request do |_endpoint, data, _headers|
381+
assert_match '<orderSource>ecommerce</orderSource>', data
382+
end.respond_with(successful_purchase_response)
383+
end
384+
367385
def test_successful_authorize_and_capture
368386
response = stub_comms do
369387
@gateway.authorize(@amount, @credit_card)

0 commit comments

Comments
 (0)