hps 1.0.1 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (54) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +8 -8
  3. data/LICENSE.txt +32 -32
  4. data/PRIVACY.txt +65 -65
  5. data/README.md +40 -40
  6. data/Rakefile +15 -15
  7. data/hps.gemspec +26 -26
  8. data/lib/hps/configuration.rb +16 -16
  9. data/lib/hps/entities/hps_account_verify.rb +8 -8
  10. data/lib/hps/entities/hps_address.rb +6 -6
  11. data/lib/hps/entities/hps_authorization.rb +12 -12
  12. data/lib/hps/entities/hps_batch.rb +6 -6
  13. data/lib/hps/entities/hps_cardholder.rb +10 -6
  14. data/lib/hps/entities/hps_charge.rb +8 -8
  15. data/lib/hps/entities/hps_charge_exceptions.rb +6 -6
  16. data/lib/hps/entities/hps_credit_card.rb +32 -32
  17. data/lib/hps/entities/hps_refund.rb +8 -8
  18. data/lib/hps/entities/hps_report_transaction_details.rb +10 -10
  19. data/lib/hps/entities/hps_report_transaction_summary.rb +6 -6
  20. data/lib/hps/entities/hps_reversal.rb +10 -10
  21. data/lib/hps/entities/hps_token_data.rb +10 -10
  22. data/lib/hps/entities/hps_transaction.rb +161 -161
  23. data/lib/hps/entities/hps_transaction_details.rb +6 -6
  24. data/lib/hps/entities/hps_transaction_header.rb +8 -8
  25. data/lib/hps/entities/hps_transaction_type.rb +16 -16
  26. data/lib/hps/entities/hps_void.rb +8 -8
  27. data/lib/hps/infrastructure/api_connection_exception.rb +11 -11
  28. data/lib/hps/infrastructure/authentication_exception.rb +11 -11
  29. data/lib/hps/infrastructure/card_exception.rb +15 -15
  30. data/lib/hps/infrastructure/exceptions.json +468 -468
  31. data/lib/hps/infrastructure/hps_exception.rb +25 -25
  32. data/lib/hps/infrastructure/hps_exception_mapper.rb +134 -134
  33. data/lib/hps/infrastructure/hps_sdk_codes.rb +48 -48
  34. data/lib/hps/infrastructure/invalid_request_exception.rb +15 -15
  35. data/lib/hps/services/hps_batch_service.rb +29 -29
  36. data/lib/hps/services/hps_charge_service.rb +634 -634
  37. data/lib/hps/services/hps_service.rb +128 -128
  38. data/lib/hps/version.rb +3 -3
  39. data/lib/hps.rb +45 -45
  40. data/tests/amex_tests.rb +230 -230
  41. data/tests/cert_tests.rb +80 -80
  42. data/tests/discover_tests.rb +324 -324
  43. data/tests/exception_mapper_tests.rb +244 -244
  44. data/tests/general_tests.rb +58 -58
  45. data/tests/hps_token_service.rb +56 -56
  46. data/tests/mastercard_tests.rb +325 -325
  47. data/tests/secret_key.rb +11 -11
  48. data/tests/test_data.rb +127 -127
  49. data/tests/test_helper.rb +108 -92
  50. data/tests/token_tests.rb +513 -513
  51. data/tests/visa_tests.rb +378 -378
  52. metadata +4 -6
  53. data/.DS_Store +0 -0
  54. data/.gitignore +0 -24
data/tests/secret_key.rb CHANGED
@@ -1,12 +1,12 @@
1
- require File.join( File.dirname(__FILE__), "test_helper" )
2
-
3
- describe "Secret Key Tests" do
4
-
5
- it "can charge with secret key" do
6
- Hps::TestHelper.configure_hps_module_secret_key()
7
- service = Hps::HpsChargeService.new()
8
- charge = service.charge(1.00, "usd", Hps::TestData.valid_visa, Hps::TestData.valid_cardholder)
9
- expect(charge.response_code).to eql("00")
10
- end
11
-
1
+ require File.join( File.dirname(__FILE__), "test_helper" )
2
+
3
+ describe "Secret Key Tests" do
4
+
5
+ it "can charge with secret key" do
6
+ Hps::TestHelper.configure_hps_module_secret_key()
7
+ service = Hps::HpsChargeService.new()
8
+ charge = service.charge(1.00, "usd", Hps::TestData.valid_visa, Hps::TestData.valid_cardholder)
9
+ expect(charge.response_code).to eql("00")
10
+ end
11
+
12
12
  end
data/tests/test_data.rb CHANGED
@@ -1,128 +1,128 @@
1
- require 'hps'
2
-
3
- module Hps
4
- module TestData
5
-
6
- # card holders
7
-
8
- def self.valid_cardholder
9
- result = HpsCardHolder.new()
10
- result.first_name = "Bill"
11
- result.last_name = "Johnson"
12
- result.address = HpsAddress.new
13
- result.address.address = "One Heartland Way"
14
- result.address.city = "Jeffersonville"
15
- result.address.state = "IN"
16
- result.address.zip = "47130"
17
- result.address.country = "United States"
18
- result
19
- end
20
-
21
- def self.cert_cardholder_shortzip
22
- result = HpsCardHolder.new()
23
- result.first_name = "Bill"
24
- result.last_name = "Johnson"
25
- result.address = HpsAddress.new
26
- result.address.address = "6860 Dallas Pkwy"
27
- result.address.city = "Irvine"
28
- result.address.state = "TX"
29
- result.address.zip = "75024"
30
- result.address.country = "United States"
31
- result
32
- end
33
-
34
- def self.cert_cardholder_shortzip_no_street
35
- result = HpsCardHolder.new()
36
- result.first_name = "Bill"
37
- result.last_name = "Johnson"
38
- result.address = HpsAddress.new
39
- result.address.city = "Irvine"
40
- result.address.state = "TX"
41
- result.address.zip = "75024"
42
- result.address.country = "United States"
43
- result
44
- end
45
-
46
- def self.cert_cardholder_longzip
47
- result = HpsCardHolder.new()
48
- result.first_name = "Bill"
49
- result.last_name = "Johnson"
50
- result.address = HpsAddress.new
51
- result.address.address = "6860 Dallas Pkwy"
52
- result.address.city = "Irvine"
53
- result.address.state = "TX"
54
- result.address.zip = "750241234"
55
- result.address.country = "United States"
56
- result
57
- end
58
-
59
- def self.cert_cardholder_longzip_no_street
60
- result = HpsCardHolder.new()
61
- result.first_name = "Bill"
62
- result.last_name = "Johnson"
63
- result.address = HpsAddress.new
64
- result.address.city = "Irvine"
65
- result.address.state = "TX"
66
- result.address.zip = "750241234"
67
- result.address.country = "United States"
68
- result
69
- end
70
-
71
- # credit cards
72
-
73
- def self.valid_visa
74
- result = HpsCreditCard.new
75
- result.cvv = 123
76
- result.exp_month = 12
77
- result.exp_year = 2015
78
- result.number = 4012002000060016
79
- result
80
- end
81
-
82
- def self.valid_mastercard
83
- result = HpsCreditCard.new
84
- result.cvv = 123
85
- result.exp_month = 12
86
- result.exp_year = 2015
87
- result.number = 5473500000000014
88
- result
89
- end
90
-
91
- def self.valid_discover
92
- result = HpsCreditCard.new
93
- result.cvv = 123
94
- result.exp_month = 12
95
- result.exp_year = 2015
96
- result.number = 6011000990156527
97
- result
98
- end
99
-
100
- def self.valid_amex
101
- result = HpsCreditCard.new
102
- result.cvv = 1234
103
- result.exp_month = 12
104
- result.exp_year = 2015
105
- result.number = 372700699251018
106
- result
107
- end
108
-
109
- def self.valid_jcb
110
- result = HpsCreditCard.new
111
- result.cvv = 123
112
- result.exp_month = 12
113
- result.exp_year = 2015
114
- result.number = 3566007770007321
115
- result
116
- end
117
-
118
- def self.invalid_card
119
- result = HpsCreditCard.new
120
- result.cvv = 123
121
- result.exp_month = 12
122
- result.exp_year = 2015
123
- result.number = 12345
124
- result
125
- end
126
-
127
- end
1
+ require 'hps'
2
+
3
+ module Hps
4
+ module TestData
5
+
6
+ # card holders
7
+
8
+ def self.valid_cardholder
9
+ result = HpsCardHolder.new()
10
+ result.first_name = "Bill"
11
+ result.last_name = "Johnson"
12
+ result.address = HpsAddress.new
13
+ result.address.address = "One Heartland Way"
14
+ result.address.city = "Jeffersonville"
15
+ result.address.state = "IN"
16
+ result.address.zip = "47130"
17
+ result.address.country = "United States"
18
+ result
19
+ end
20
+
21
+ def self.cert_cardholder_shortzip
22
+ result = HpsCardHolder.new()
23
+ result.first_name = "Bill"
24
+ result.last_name = "Johnson"
25
+ result.address = HpsAddress.new
26
+ result.address.address = "6860 Dallas Pkwy"
27
+ result.address.city = "Irvine"
28
+ result.address.state = "TX"
29
+ result.address.zip = "75024"
30
+ result.address.country = "United States"
31
+ result
32
+ end
33
+
34
+ def self.cert_cardholder_shortzip_no_street
35
+ result = HpsCardHolder.new()
36
+ result.first_name = "Bill"
37
+ result.last_name = "Johnson"
38
+ result.address = HpsAddress.new
39
+ result.address.city = "Irvine"
40
+ result.address.state = "TX"
41
+ result.address.zip = "75024"
42
+ result.address.country = "United States"
43
+ result
44
+ end
45
+
46
+ def self.cert_cardholder_longzip
47
+ result = HpsCardHolder.new()
48
+ result.first_name = "Bill"
49
+ result.last_name = "Johnson"
50
+ result.address = HpsAddress.new
51
+ result.address.address = "6860 Dallas Pkwy"
52
+ result.address.city = "Irvine"
53
+ result.address.state = "TX"
54
+ result.address.zip = "750241234"
55
+ result.address.country = "United States"
56
+ result
57
+ end
58
+
59
+ def self.cert_cardholder_longzip_no_street
60
+ result = HpsCardHolder.new()
61
+ result.first_name = "Bill"
62
+ result.last_name = "Johnson"
63
+ result.address = HpsAddress.new
64
+ result.address.city = "Irvine"
65
+ result.address.state = "TX"
66
+ result.address.zip = "750241234"
67
+ result.address.country = "United States"
68
+ result
69
+ end
70
+
71
+ # credit cards
72
+
73
+ def self.valid_visa
74
+ result = HpsCreditCard.new
75
+ result.cvv = 123
76
+ result.exp_month = 12
77
+ result.exp_year = 2015
78
+ result.number = 4012002000060016
79
+ result
80
+ end
81
+
82
+ def self.valid_mastercard
83
+ result = HpsCreditCard.new
84
+ result.cvv = 123
85
+ result.exp_month = 12
86
+ result.exp_year = 2015
87
+ result.number = 5473500000000014
88
+ result
89
+ end
90
+
91
+ def self.valid_discover
92
+ result = HpsCreditCard.new
93
+ result.cvv = 123
94
+ result.exp_month = 12
95
+ result.exp_year = 2015
96
+ result.number = 6011000990156527
97
+ result
98
+ end
99
+
100
+ def self.valid_amex
101
+ result = HpsCreditCard.new
102
+ result.cvv = 1234
103
+ result.exp_month = 12
104
+ result.exp_year = 2015
105
+ result.number = 372700699251018
106
+ result
107
+ end
108
+
109
+ def self.valid_jcb
110
+ result = HpsCreditCard.new
111
+ result.cvv = 123
112
+ result.exp_month = 12
113
+ result.exp_year = 2015
114
+ result.number = 3566007770007321
115
+ result
116
+ end
117
+
118
+ def self.invalid_card
119
+ result = HpsCreditCard.new
120
+ result.cvv = 123
121
+ result.exp_month = 12
122
+ result.exp_year = 2015
123
+ result.number = 12345
124
+ result
125
+ end
126
+
127
+ end
128
128
  end
data/tests/test_helper.rb CHANGED
@@ -1,92 +1,108 @@
1
- require File.join( File.dirname(__FILE__), "test_data.rb" )
2
- require "hps"
3
- require "rspec"
4
-
5
- module Hps
6
- module TestHelper
7
-
8
- def self.configure_hps_module
9
- Hps.configure do |config|
10
- config.secret_api_key = "skapi_cert_MYl2AQAowiQAbLp5JesGKh7QFkcizOP2jcX9BrEMqQ"
11
- end
12
- end
13
-
14
-
15
- def self.configure_hps_module_secret_key
16
- Hps.configure do |config|
17
- config.secret_api_key = "skapi_cert_MYl2AQAowiQAbLp5JesGKh7QFkcizOP2jcX9BrEMqQ"
18
- end
19
- end
20
-
21
- def self.configure_hps_module_for_certification
22
- Hps.configure do |config|
23
- config.secret_api_key = "skapi_cert_MYl2AQAowiQAbLp5JesGKh7QFkcizOP2jcX9BrEMqQ"
24
- end
25
- end
26
-
27
- def self.charge_valid_amex(amount)
28
- TestHelper.configure_hps_module()
29
- service = Hps::HpsChargeService.new()
30
- service.charge(amount, "usd", TestData.valid_amex, TestData.valid_cardholder)
31
- end
32
-
33
- def self.charge_valid_discover(amount)
34
- TestHelper.configure_hps_module()
35
- service = Hps::HpsChargeService.new()
36
- service.charge(amount, "usd", TestData.valid_discover, TestData.valid_cardholder)
37
- end
38
-
39
- def self.charge_valid_mastercard(amount)
40
- TestHelper.configure_hps_module()
41
- service = Hps::HpsChargeService.new()
42
- service.charge(amount, "usd", TestData.valid_mastercard, TestData.valid_cardholder)
43
- end
44
-
45
- def self.charge_valid_visa(amount)
46
- TestHelper.configure_hps_module()
47
- service = Hps::HpsChargeService.new()
48
- service.charge(amount, "usd", TestData.valid_visa, TestData.valid_cardholder)
49
- end
50
-
51
- def self.charge_token(token_value,multi_use=false)
52
- TestHelper.valid_multi_use_config
53
- service = Hps::HpsChargeService.new()
54
- service.charge(50, "usd", token_value, TestData.valid_cardholder,multi_use)
55
- end
56
-
57
- def self.auth_token(token_value,multi_use=false)
58
- TestHelper.valid_multi_use_config
59
- service = Hps::HpsChargeService.new()
60
- service.authorize(50, "usd", token_value, TestData.valid_cardholder,multi_use)
61
- end
62
-
63
- def self.verify_token(token_value,multi_use=false)
64
- TestHelper.valid_multi_use_config
65
- service = Hps::HpsChargeService.new()
66
- service.verify(token_value, TestData.valid_cardholder,multi_use)
67
- end
68
-
69
- def self.refund_token(token_value)
70
- TestHelper.valid_multi_use_config
71
- service = Hps::HpsChargeService.new()
72
- service.refund(50,'usd',token_value, TestData.valid_cardholder)
73
- end
74
-
75
- def self.reverse_token(token_value)
76
- TestHelper.valid_multi_use_config
77
- service = Hps::HpsChargeService.new()
78
- service.reverse(token_value,50,'usd')
79
- end
80
-
81
- def self.valid_multi_use_public_key
82
- 'pkapi_cert_P6dRqs1LzfWJ6HgGVZ'
83
- end
84
-
85
- def self.valid_multi_use_config
86
- Hps.configure do |config|
87
- config.secret_api_key ='skapi_cert_MYl2AQAowiQAbLp5JesGKh7QFkcizOP2jcX9BrEMqQ'
88
- end
89
- end
90
-
91
- end
92
- end
1
+ require File.join( File.dirname(__FILE__), "test_data.rb" )
2
+ require "hps"
3
+ require "rspec"
4
+
5
+ module Hps
6
+ module TestHelper
7
+
8
+ def self.configure_hps_module
9
+ Hps.configure do |config|
10
+ config.service_uri = "https://posgateway.cert.secureexchange.net/Hps.Exchange.PosGateway/PosGatewayService.asmx?wsdl"
11
+ config.user_name = "777700004035"
12
+ config.password = "$Test1234"
13
+ config.developer_id = 123456
14
+ config.version_number = 1234
15
+ config.license_id = 20855
16
+ config.device_id = 1519321
17
+ config.site_id = 20856
18
+ config.site_trace = "trace0001"
19
+ end
20
+ end
21
+
22
+
23
+ def self.configure_hps_module_secret_key
24
+ Hps.configure do |config|
25
+ config.secret_api_key = "skapi_uat_MXZOAAC7LmEFVeOYGlVHe_WhvRf_UzWzJq5VJ8A-jA"
26
+ end
27
+ end
28
+
29
+ def self.configure_hps_module_for_certification
30
+ Hps.configure do |config|
31
+ config.service_uri = "https://posgateway.cert.secureexchange.net/Hps.Exchange.PosGateway/PosGatewayService.asmx?wsdl"
32
+ config.user_name = "777700005412"
33
+ config.password = "$Test1234"
34
+ config.developer_id = 123456
35
+ config.version_number = 1234
36
+ config.license_id = 20994
37
+ config.device_id = 1522326
38
+ config.site_id = 20995
39
+ config.site_trace = "trace0001"
40
+ end
41
+ end
42
+
43
+ def self.charge_valid_amex(amount)
44
+ TestHelper.configure_hps_module()
45
+ service = Hps::HpsChargeService.new()
46
+ service.charge(amount, "usd", TestData.valid_amex, TestData.valid_cardholder)
47
+ end
48
+
49
+ def self.charge_valid_discover(amount)
50
+ TestHelper.configure_hps_module()
51
+ service = Hps::HpsChargeService.new()
52
+ service.charge(amount, "usd", TestData.valid_discover, TestData.valid_cardholder)
53
+ end
54
+
55
+ def self.charge_valid_mastercard(amount)
56
+ TestHelper.configure_hps_module()
57
+ service = Hps::HpsChargeService.new()
58
+ service.charge(amount, "usd", TestData.valid_mastercard, TestData.valid_cardholder)
59
+ end
60
+
61
+ def self.charge_valid_visa(amount)
62
+ TestHelper.configure_hps_module()
63
+ service = Hps::HpsChargeService.new()
64
+ service.charge(amount, "usd", TestData.valid_visa, TestData.valid_cardholder)
65
+ end
66
+
67
+ def self.charge_token(token_value,multi_use=false)
68
+ TestHelper.valid_multi_use_config
69
+ service = Hps::HpsChargeService.new()
70
+ service.charge(50, "usd", token_value, TestData.valid_cardholder,multi_use)
71
+ end
72
+
73
+ def self.auth_token(token_value,multi_use=false)
74
+ TestHelper.valid_multi_use_config
75
+ service = Hps::HpsChargeService.new()
76
+ service.authorize(50, "usd", token_value, TestData.valid_cardholder,multi_use)
77
+ end
78
+
79
+ def self.verify_token(token_value,multi_use=false)
80
+ TestHelper.valid_multi_use_config
81
+ service = Hps::HpsChargeService.new()
82
+ service.verify(token_value, TestData.valid_cardholder,multi_use)
83
+ end
84
+
85
+ def self.refund_token(token_value)
86
+ TestHelper.valid_multi_use_config
87
+ service = Hps::HpsChargeService.new()
88
+ service.refund(50,'usd',token_value, TestData.valid_cardholder)
89
+ end
90
+
91
+ def self.reverse_token(token_value)
92
+ TestHelper.valid_multi_use_config
93
+ service = Hps::HpsChargeService.new()
94
+ service.reverse(token_value,50,'usd')
95
+ end
96
+
97
+ def self.valid_multi_use_public_key
98
+ 'pkapi_cert_MrSafdEKB2dIHQEzDk'
99
+ end
100
+
101
+ def self.valid_multi_use_config
102
+ Hps.configure do |config|
103
+ config.secret_api_key ='skapi_cert_MfBSAADtSBcAJQ9cYzNXr2nQRONdeylsOqnWHRi1_Q'
104
+ end
105
+ end
106
+
107
+ end
108
+ end