spree_braintree_vzero 3.5.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (169) hide show
  1. checksums.yaml +7 -0
  2. data/.codeclimate.yml +15 -0
  3. data/.gitignore +19 -0
  4. data/.rspec +1 -0
  5. data/.travis.yml +63 -0
  6. data/Appraisals +45 -0
  7. data/CONTRIBUTING.md +28 -0
  8. data/Gemfile +14 -0
  9. data/LICENSE +26 -0
  10. data/README.md +83 -0
  11. data/Rakefile +21 -0
  12. data/app/assets/images/credit_cards/icons/jcb.png +0 -0
  13. data/app/assets/javascripts/spree/backend/payments.js +19 -0
  14. data/app/assets/javascripts/spree/backend/spree_braintree_vzero.js +81 -0
  15. data/app/assets/javascripts/spree/frontend/spree_braintree_vzero.js +68 -0
  16. data/app/assets/stylesheets/spree/backend/spree_braintree_vzero.css +5 -0
  17. data/app/controllers/spree/admin/payments_controller_decorator.rb +43 -0
  18. data/app/controllers/spree/api/v1/braintree_client_token_controller.rb +31 -0
  19. data/app/controllers/spree/checkout_controller_decorator.rb +38 -0
  20. data/app/controllers/spree/orders_controller_decorator.rb +62 -0
  21. data/app/controllers/spree/user_sessions_controller_decorator.rb +15 -0
  22. data/app/helpers/spree/admin/decorated_navigation_helper.rb +10 -0
  23. data/app/helpers/spree/admin/payment_methods_helper.rb +101 -0
  24. data/app/helpers/spree/braintree_helper.rb +27 -0
  25. data/app/models/braintree/successful_result_decorator.rb +21 -0
  26. data/app/models/spree/address_decorator.rb +18 -0
  27. data/app/models/spree/braintree_checkout.rb +105 -0
  28. data/app/models/spree/gateway/braintree_vzero_base.rb +168 -0
  29. data/app/models/spree/gateway/braintree_vzero_base/address.rb +33 -0
  30. data/app/models/spree/gateway/braintree_vzero_base/braintree_user.rb +25 -0
  31. data/app/models/spree/gateway/braintree_vzero_base/purchase_data.rb +48 -0
  32. data/app/models/spree/gateway/braintree_vzero_base/transaction.rb +39 -0
  33. data/app/models/spree/gateway/braintree_vzero_base/utils.rb +108 -0
  34. data/app/models/spree/gateway/braintree_vzero_drop_in_ui.rb +24 -0
  35. data/app/models/spree/gateway/braintree_vzero_hosted_fields.rb +28 -0
  36. data/app/models/spree/gateway/braintree_vzero_paypal_express.rb +36 -0
  37. data/app/models/spree/order_decorator.rb +153 -0
  38. data/app/models/spree/payment_decorator.rb +10 -0
  39. data/app/models/spree/payment_processing_decorator.rb +61 -0
  40. data/app/models/spree/preferences/preferable_decorator.rb +54 -0
  41. data/app/overrides/spree/admin/orders/customer_details/_form.rb +8 -0
  42. data/app/overrides/spree/admin/payment_methods/_form.rb +10 -0
  43. data/app/overrides/spree/admin/shared/_order_summary.rb +23 -0
  44. data/app/overrides/spree/admin/shared/_refunds.rb +13 -0
  45. data/app/overrides/spree/checkout/_new_user.rb +6 -0
  46. data/app/overrides/spree/checkout/_payment.rb +20 -0
  47. data/app/overrides/spree/checkout/registration.rb +6 -0
  48. data/app/overrides/spree/orders/edit.rb +6 -0
  49. data/app/overrides/spree/shared/_order_details.rb +13 -0
  50. data/app/overrides/spree/shared/_payment.rb +28 -0
  51. data/app/views/spree/admin/payment_methods/_braintree_vzero_form.html.erb +83 -0
  52. data/app/views/spree/admin/payments/source_forms/_braintree_vzero_dropin_ui.html.erb +1 -0
  53. data/app/views/spree/admin/payments/source_forms/_braintree_vzero_hosted_fields.html.erb +1 -0
  54. data/app/views/spree/admin/payments/source_forms/_braintree_vzero_paypal_express.html.erb +1 -0
  55. data/app/views/spree/admin/payments/source_forms/braintree_vzero/_payments.html.erb +87 -0
  56. data/app/views/spree/admin/payments/source_views/_braintree_vzero_dropin_ui.html.erb +1 -0
  57. data/app/views/spree/admin/payments/source_views/_braintree_vzero_hosted_fields.html.erb +1 -0
  58. data/app/views/spree/admin/payments/source_views/_braintree_vzero_paypal_express.html.erb +1 -0
  59. data/app/views/spree/admin/payments/source_views/braintree_vzero/_payment.html.erb +17 -0
  60. data/app/views/spree/braintree_vzero/_paypal_checkout.html.erb +87 -0
  61. data/app/views/spree/checkout/payment/_braintree_vzero_dropin_ui.html.erb +4 -0
  62. data/app/views/spree/checkout/payment/_braintree_vzero_hosted_fields.html.erb +4 -0
  63. data/app/views/spree/checkout/payment/_braintree_vzero_paypal_express.html.erb +4 -0
  64. data/app/views/spree/checkout/payment/braintree_vzero/_buttons.html.erb +11 -0
  65. data/app/views/spree/checkout/payment/braintree_vzero/_dropin_on_error_callback.js.erb +3 -0
  66. data/app/views/spree/checkout/payment/braintree_vzero/_dropin_on_ready_callback.js.erb +1 -0
  67. data/app/views/spree/checkout/payment/braintree_vzero/_hosted_fields_on_field_event_callback.js.erb +12 -0
  68. data/app/views/spree/checkout/payment/braintree_vzero/_hosted_fields_styles.js.erb +29 -0
  69. data/app/views/spree/checkout/payment/braintree_vzero/_payment.html.erb +84 -0
  70. data/app/views/spree/checkout/payment/braintree_vzero/_three_d_secure.html.erb +218 -0
  71. data/app/views/spree/shared/braintree_vzero/_dropin.js.erb +70 -0
  72. data/app/views/spree/shared/braintree_vzero/_hosted.js.erb +66 -0
  73. data/app/views/spree/shared/braintree_vzero/_paypal.js.erb +39 -0
  74. data/bin/rails +7 -0
  75. data/config/initializers/extend_spree_permitted_checkout_attributes.rb +5 -0
  76. data/config/initializers/prepend_helpers.rb +1 -0
  77. data/config/locales/en.yml +79 -0
  78. data/config/routes.rb +7 -0
  79. data/db/migrate/20150904143013_create_spree_braintree_checkouts.rb +9 -0
  80. data/db/migrate/20151002094655_add_braintree_id_to_spree_addresses.rb +5 -0
  81. data/db/migrate/20151018123907_add_braintree_token_and_nonce_to_spree_payments.rb +6 -0
  82. data/db/migrate/20151027135109_add_paypal_email_to_spree_braintree_checkout.rb +5 -0
  83. data/db/migrate/20151028095515_add_advanced_fraud_data_to_spree_braintree_checkout.rb +5 -0
  84. data/db/migrate/20151202095956_add_risk_id_and_risk_decision_to_spree_braintree_checkouts.rb +6 -0
  85. data/db/migrate/20151211100203_add_braintree_last_digits_and_braintree_card_type_to_spree_braintree_checkouts.rb +6 -0
  86. data/db/migrate/20160112153422_add_admin_payment_to_spree_braintree_checkout.rb +5 -0
  87. data/gemfiles/spree_3_5.gemfile +12 -0
  88. data/gemfiles/spree_3_5_spree_auth_devise.gemfile +13 -0
  89. data/gemfiles/spree_3_7.gemfile +12 -0
  90. data/gemfiles/spree_3_7_spree_auth_devise.gemfile +13 -0
  91. data/gemfiles/spree_4_0.gemfile +11 -0
  92. data/gemfiles/spree_4_0_spree_auth_devise.gemfile +12 -0
  93. data/gemfiles/spree_master.gemfile +11 -0
  94. data/gemfiles/spree_master_spree_auth_devise.gemfile +12 -0
  95. data/lib/generators/spree_braintree_vzero/install/install_generator.rb +34 -0
  96. data/lib/spree_braintree_vzero.rb +6 -0
  97. data/lib/spree_braintree_vzero/engine.rb +28 -0
  98. data/lib/spree_braintree_vzero/factories.rb +10 -0
  99. data/lib/spree_braintree_vzero/railtie.rb +8 -0
  100. data/lib/spree_braintree_vzero/version.rb +17 -0
  101. data/lib/tasks/spree_braintree_vzero.rake +6 -0
  102. data/spec/controllers/spree/api/v1/braintree_client_token_controller_spec.rb +49 -0
  103. data/spec/controllers/spree/checkout_controller_spec.rb +85 -0
  104. data/spec/controllers/spree/orders_controller_spec.rb +97 -0
  105. data/spec/factories/braintree_checkout_factory.rb +7 -0
  106. data/spec/factories/braintree_gateway_factory.rb +35 -0
  107. data/spec/factories/payment_factory_decorator.rb +28 -0
  108. data/spec/features/spree/admin/log_entries_spec.rb +63 -0
  109. data/spec/models/gateway/braintree_vzero_base/address_spec.rb +28 -0
  110. data/spec/models/gateway/braintree_vzero_base/purchase_data_spec.rb +57 -0
  111. data/spec/models/gateway/braintree_vzero_base_spec.rb +346 -0
  112. data/spec/models/gateway/braintree_vzero_dropin_ui_spec.rb +35 -0
  113. data/spec/models/gateway/braintree_vzero_hosted_fields_spec.rb +35 -0
  114. data/spec/models/spree/order_spec.rb +186 -0
  115. data/spec/spec_helper.rb +100 -0
  116. data/spec/support/vcr.rb +10 -0
  117. data/spec/vcr/Log_entries/with_a_failed_log_entry/shows_a_failed_attempt.yml +91 -0
  118. data/spec/vcr/Log_entries/with_a_successful_log_entry/shows_a_successful_attempt.yml +113 -0
  119. data/spec/vcr/Spree_Api_V1_BraintreeClientTokenController/POST_create/guest_checkout/returns_proper_json_data_when_gateway_not_specified.yml +90 -0
  120. data/spec/vcr/Spree_Api_V1_BraintreeClientTokenController/POST_create/guest_checkout/returns_proper_json_data_when_gateway_specified.yml +90 -0
  121. data/spec/vcr/Spree_Api_V1_BraintreeClientTokenController/POST_create/user_checkout/returns_proper_json_data_when_gateway_not_specified.yml +191 -0
  122. data/spec/vcr/Spree_Api_V1_BraintreeClientTokenController/POST_create/user_checkout/returns_proper_json_data_when_gateway_specified.yml +191 -0
  123. data/spec/vcr/Spree_CheckoutController/_update/braintree_payment/advanced_fraud_data_in_source_should_be_updated.yml +71 -0
  124. data/spec/vcr/Spree_CheckoutController/_update/braintree_payment/when_token_credit_card_data_in_source_should_be_updated_from_Braintree_Vault.yml +139 -0
  125. data/spec/vcr/Spree_CheckoutController/_update/braintree_paypal_express_payment/amount_in_payment_should_be_updated.yml +280 -0
  126. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_capture/captures_authorized_amount/updates_Payment_state.yml +206 -0
  127. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_credit/with_refundable_state/should_be_a_success.yml +211 -0
  128. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_credit/with_unrefundable_state/should_not_be_a_success.yml +177 -0
  129. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/data_from_admin_panel/should_include_only_essential_data.yml +78 -0
  130. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/does_not_store_Transaction_in_Vault_by_default.yml +111 -0
  131. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/returns_false_with_invalid_nonce.yml +88 -0
  132. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/returns_false_with_invalid_token.yml +88 -0
  133. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/returns_success_with_valid_token.yml +113 -0
  134. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/returns_suceess_with_valid_nonce.yml +111 -0
  135. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/using_Vault/saves_Braintree_Address_id_to_Spree_Address_when_address_is_being_saved.yml +130 -0
  136. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/using_Vault/saves_unique_Braintree_Addresses_ids.yml +143 -0
  137. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/using_Vault/sends_empty_address_id_when_address_is_already_in_vault.yml +553 -0
  138. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/using_Vault/stores_Transaction.yml +181 -0
  139. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/with_3DSecure_option_turned_on/performs_3DSecure_check.yml +112 -0
  140. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/with_3DSecure_option_turned_on/returns_error.yml +112 -0
  141. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/with_advanced_fraud_tool_enabled/returns_fraud_data.yml +111 -0
  142. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/with_advanced_fraud_tool_enabled/returns_success.yml +111 -0
  143. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_settle/settles_authorized_amount/does_not_update_Order_payment_state.yml +204 -0
  144. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_settle/settles_authorized_amount/prepares_Checkout_for_status_updating.yml +204 -0
  145. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_settle/settles_authorized_amount/submits_Transaction_for_settlement.yml +377 -0
  146. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_settle/settles_authorized_amount/updates_Payment_state.yml +203 -0
  147. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_update_states/does_not_update_completed_Checkout_on_subsequent_runs.yml +202 -0
  148. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_update_states/updates_Order_payment_state_when_Checkout_is_updated.yml +202 -0
  149. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_update_states/updates_Payment_state_when_Checkout_is_updated.yml +202 -0
  150. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_update_states/updates_payment_State.yml +202 -0
  151. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_void/with_unvoidable_state/should_not_change_payment_source_state.yml +178 -0
  152. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_void/with_voidable_state/should_change_payment_source_state_to_voided.yml +199 -0
  153. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/generates_token_for_User_registered_in_Braintree.yml +356 -0
  154. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/generates_token_for_new_User.yml +189 -0
  155. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/generates_token_without_User.yml +89 -0
  156. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase/with_invalid_credentials/raises_Braintree_error.yml +62 -0
  157. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase_Address/_create/creates_Braintree_Address.yml +84 -0
  158. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase_Address/_create/deletes_Braintree_Address.yml +141 -0
  159. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase_Address/_create/finds_Braintree_Address.yml +148 -0
  160. data/spec/vcr/Spree_Gateway_BraintreeVzeroBase_Address/_create/updates_Braintree_Address.yml +154 -0
  161. data/spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/with_auto_capture/should_complete_payment.yml +116 -0
  162. data/spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/with_auto_capture/should_update_payment_s_response_code.yml +111 -0
  163. data/spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/with_auto_capture/should_update_payment_s_source_state_and_transaction_id.yml +111 -0
  164. data/spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/without_auto_capture/should_pend_payment.yml +111 -0
  165. data/spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/without_auto_capture/should_update_payment_s_response_code.yml +111 -0
  166. data/spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/without_auto_capture/should_update_payment_s_source_state_and_transaction_id.yml +110 -0
  167. data/spree_braintree_vzero.gemspec +52 -0
  168. data/vendor/assets/javascripts/maskedinput/jquery.maskedinput.min.js +7 -0
  169. metadata +643 -0
@@ -0,0 +1,111 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://yd57hn7c4r5bhp8g:1cc8b0097ef43165847630438f864834@api.sandbox.braintreegateway.com/merchants/yccdpmn3cvtjbgnr/transactions
6
+ body:
7
+ encoding: UTF-8
8
+ string: |
9
+ <?xml version="1.0" encoding="UTF-8"?>
10
+ <transaction>
11
+ <customer>
12
+ </customer>
13
+ <payment-method-nonce>fake-valid-nonce</payment-method-nonce>
14
+ <amount>20.00</amount>
15
+ <order-id>R604166569</order-id>
16
+ <descriptor>
17
+ <name></name>
18
+ </descriptor>
19
+ <options>
20
+ <submit-for-settlement type="boolean">false</submit-for-settlement>
21
+ <add-billing-address-to-payment-method type="boolean">false</add-billing-address-to-payment-method>
22
+ <three-d-secure>
23
+ <required type="boolean">false</required>
24
+ </three-d-secure>
25
+ <store-in-vault type="boolean">false</store-in-vault>
26
+ </options>
27
+ <type>sale</type>
28
+ </transaction>
29
+ headers:
30
+ Accept-Encoding:
31
+ - gzip
32
+ Accept:
33
+ - application/xml
34
+ User-Agent:
35
+ - Braintree Ruby Gem 2.49.0
36
+ X-Apiversion:
37
+ - '4'
38
+ Content-Type:
39
+ - application/xml
40
+ response:
41
+ status:
42
+ code: 201
43
+ message: Created
44
+ headers:
45
+ Date:
46
+ - Tue, 20 Oct 2015 12:36:58 GMT
47
+ Content-Type:
48
+ - application/xml; charset=utf-8
49
+ Transfer-Encoding:
50
+ - chunked
51
+ Connection:
52
+ - close
53
+ X-Authentication:
54
+ - basic_auth
55
+ X-User:
56
+ - 97syg9czj6hrdzyn
57
+ Vary:
58
+ - Accept-Encoding
59
+ Content-Encoding:
60
+ - gzip
61
+ X-Ua-Compatible:
62
+ - IE=Edge,chrome=1
63
+ Etag:
64
+ - '"38901c25a79b62c0fa21df3d50299d78"'
65
+ Cache-Control:
66
+ - max-age=0, private, must-revalidate
67
+ X-Request-Id:
68
+ - 85cb750d5dd091a3b319ccca0e13f109
69
+ X-Runtime:
70
+ - '0.697729'
71
+ X-Frame-Options:
72
+ - SAMEORIGIN
73
+ Strict-Transport-Security:
74
+ - max-age=31536000; includeSubDomains
75
+ body:
76
+ encoding: ASCII-8BIT
77
+ string: !binary |-
78
+ H4sIAGo1JlYAA+RYS2/jNhC+768wfGckOYmbBIqCbdECRdFisUmKIpeAlsYW
79
+ a4lUScqx99d3Rm9FVJJeigK9WTMfh5wHZz46vDvm2eIA2gglb5fBmb9cgIxV
80
+ IuTudvn48BO7Wt5Fn0KruTQ8toiKPi0WoUii6/xlc0hCD3+SxFhuSxPx0qZK
81
+ i2+AmkZEWnsqIDI8g9CrfpIsLrXGvU5MGMVwS4h+fPwaelMxgXmuSmmjlX/m
82
+ +6HXfJEiBx2nXFrG45iEDM9jCq73RmUlndeY4ptSoecCkgGlE9D08XXtXwTr
83
+ 9eX6OvQ6YXVQDdxCwrhd0OFvlwl+WpHDEs8TXLLAZyv/IVjdnK9vLq+e0IVu
84
+ QbW+LJJ/tr5f0ATKWIXHp48q9gspstul1SUsvUa4FdpYJnkODmXG53Wxygsu
85
+ Tw4N5FxkDvkLbIywLltFqqRLvuXH11LKc+9VuBFZhiX3L3torAbAgkgSDca4
86
+ QnC0IBPKxCwkUzHPhHWZ17DD+nPFSeHVyOrivr4I/O9Cbyhqj41Fqk/zXtVq
87
+ WsF4VqR89SHU+XsoWWJSRDxN2CBH6Nq2lAmbJqrXmKbYudb8NFJiPAf9xGUE
88
+ 768VGA4D1maQA97W8QqX8b71vGd+YHbDbZw6Makoiv9lSb5RIP+ZWhxmp+mP
89
+ bCsgS0xTCwfDQGulGcaowCEATtcq3MD1MTr6FSfNm4DWxDhrr0A/11bexFRu
90
+ HA7T/adCgu5wPLzwE2r+hLrKceKYaWLDQqsYd8M4tLeDV/DK0vrh+1/uf8De
91
+ 8xZobGV8lMCnYTynnVlpsYKjzwVqDkQS5hBVaJNE0Ekw+FPYxNeDEjElaIuJ
92
+ xxVYOxvQ04iURANwl3rEz6AsP7KaZDhVcIS8aKf5RqkMuFxGW54ZIjgdoGUP
93
+ 6AWLuU6aErdqD647uBEyuvCD1dUVNVs57CMXUXB1FYRe89FcFTTJKjr1uzAc
94
+ a6X7bltFIXSdylxJm0bBKvQmwgn2BFwjMVn5I3AlbfZtJjejRlNRwsf7fp73
95
+ 0v6UqcqqYLvbh8j5Dlipsyi1tjA3nscNtmhzttFcSLo2Tb2fYd/0Cn6izv2c
96
+ A9Zq8pypnfIO6P9ZIXd3IA9CK0mAW8NlslFHZKid/abXaSg4crvfFJVf/bvW
97
+ pMAzm+KJIXqUe6leZOgNZDUogY2wvb7+bFSlxsRhDe7KjBjcAPVa0w0C4qU4
98
+ 63roQNacl5+0ygaIVtCEz5gSWyGOMrnvMSPpuLWqLSMtlzG6ef+Zdpwq2lCp
99
+ pIwrrtzv3stqUCnFXyU0VwnFGHyBzXhyq+iOgswVM8l+5u50+oYjju9O88hg
100
+ qcBS06cRB+jmZ4UANNQkhS4ccm1U5MUH+XeH7yy8+bqpEHMPlDpCBnluzrcC
101
+ ub1piTwdbMBTjMLOBBEvEOSQ1+55r/3rJE1M6h6XcTfvKTcm1qKY5UUDfdeT
102
+ KtLHCpzDKmFIPRhFz9m9Rkg8lrZOLB751T7U6Bn2dAepS4SpqtOpg9qKahvT
103
+ TH+Ze5ZgR5iebWwUCRO9R9GvmYLt9HWvxwemhKlVzPmBhtMWYG6s0LbqhdXZ
104
+ nGgxDJtSm5qzJmDxZWbanjNSuXMzILzu7ceYyRP8g3A4UgCw12r3MYj8Y6Ui
105
+ TXMZLOPYwWcxIzO+k+dFacFVGs2QYEIi7SrrBwQNxrqhPFNDCb050Ji4DBwd
106
+ 85shd5kFvW+rYjvv2eookRZmT1nm3bskOg++PPn3X/w/Lp/O279jqtsRC/pX
107
+ p+VaVNqNpArryFJoUxyzDK8t1TNgSLZqnIlRU4o+/Q0AAP//AwA10s6KORIA
108
+ AA==
109
+ http_version:
110
+ recorded_at: Tue, 20 Oct 2015 12:36:58 GMT
111
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,111 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://yd57hn7c4r5bhp8g:1cc8b0097ef43165847630438f864834@api.sandbox.braintreegateway.com/merchants/yccdpmn3cvtjbgnr/transactions
6
+ body:
7
+ encoding: UTF-8
8
+ string: |
9
+ <?xml version="1.0" encoding="UTF-8"?>
10
+ <transaction>
11
+ <customer>
12
+ </customer>
13
+ <payment-method-nonce>fake-valid-nonce</payment-method-nonce>
14
+ <amount>20.00</amount>
15
+ <order-id>R310102842</order-id>
16
+ <descriptor>
17
+ <name></name>
18
+ </descriptor>
19
+ <options>
20
+ <submit-for-settlement type="boolean">false</submit-for-settlement>
21
+ <add-billing-address-to-payment-method type="boolean">false</add-billing-address-to-payment-method>
22
+ <three-d-secure>
23
+ <required type="boolean">false</required>
24
+ </three-d-secure>
25
+ <store-in-vault type="boolean">false</store-in-vault>
26
+ </options>
27
+ <type>sale</type>
28
+ </transaction>
29
+ headers:
30
+ Accept-Encoding:
31
+ - gzip
32
+ Accept:
33
+ - application/xml
34
+ User-Agent:
35
+ - Braintree Ruby Gem 2.49.0
36
+ X-Apiversion:
37
+ - '4'
38
+ Content-Type:
39
+ - application/xml
40
+ response:
41
+ status:
42
+ code: 201
43
+ message: Created
44
+ headers:
45
+ Date:
46
+ - Tue, 20 Oct 2015 12:37:03 GMT
47
+ Content-Type:
48
+ - application/xml; charset=utf-8
49
+ Transfer-Encoding:
50
+ - chunked
51
+ Connection:
52
+ - close
53
+ X-Authentication:
54
+ - basic_auth
55
+ X-User:
56
+ - 97syg9czj6hrdzyn
57
+ Vary:
58
+ - Accept-Encoding
59
+ Content-Encoding:
60
+ - gzip
61
+ X-Ua-Compatible:
62
+ - IE=Edge,chrome=1
63
+ Etag:
64
+ - '"1ab9692425e861d909c0aabbc8ebf3d5"'
65
+ Cache-Control:
66
+ - max-age=0, private, must-revalidate
67
+ X-Request-Id:
68
+ - 61c25187113d1a1718b4c1ba65cd7a10
69
+ X-Runtime:
70
+ - '2.264596'
71
+ X-Frame-Options:
72
+ - SAMEORIGIN
73
+ Strict-Transport-Security:
74
+ - max-age=31536000; includeSubDomains
75
+ body:
76
+ encoding: ASCII-8BIT
77
+ string: !binary |-
78
+ H4sIAG81JlYAA+RYS2/jNhC+768wfGckOUnXGygKFn2hBbYodjdFu5eAksYW
79
+ 1xKpkpRj76/vjN6KqCSnokBv1szHIefBmY8O705FvjqCNkLJ23Vw4a9XIBOV
80
+ Crm/Xd9//olt13fRm9BqLg1PLKKiN6tVKNLo6jqJi6+hhz9JYiy3lYl4ZTOl
81
+ xTdIQ68VkdaeS4gMzyH06p8kSyqtca8zE0Yx3BKiH+8/ht5cTGBeqEraaONf
82
+ +H7otV+kKEAnGZeW8SQhIcPzmJLrg1F5Rec1pvymVOi5gGRA6RQ0fXy8DPzA
83
+ 32yvNqHXC+uDauAWUsbtig5/u07x04oC1nie4JoFPtv4n4PNzeXbGz/4gi70
84
+ C+r1VZm+fv0lrh8WtIEyVuHx6aOO/UqK/HZtdQVrrxXuhDaWSV6AQ5nzZV2i
85
+ ipLLs0MDBRe5Q/4IsRHWZavMlHTJd/z0VEp5HrwKY5HnWHL/sofGagAsiDTV
86
+ YIwrBCcLMqVMLEJylfBcWJd5DXusP1ecFF6NvCnud1eB/zb0xqLu2Fik+rzs
87
+ VaOmFYznZcY3r0JdvoSSFSZFJPOEjXKEru0qmbJ5ogaNaYuda83PEyXGc9RP
88
+ XEbw/lqB4TBgbQ4F4G2drnAZH1rPS+ZHZmNuk8yJyURZ/i9L8pkC+c/U4jg7
89
+ bX9kOwF5atpaOBoGWivNMEYlDgFwulbjRq5P0dEHnDTPAjoT06w9Af3SWHkW
90
+ U7txPM73nwsJusfx8MjPqPkKTZXjxDHzxIalVgnuhnHobgev4bWl7374868t
91
+ 7vEsaGplepTAp2G8pF1YabGCo/clao5EEpYQdWjTVNBJMPhz2MzXoxIJJWiH
92
+ iccVWDsx6HlEKqIBuEsz4hdQlp9YQzKcKjhBUXbTPFYqBy7X0Y7nhghOD+jY
93
+ A3rBEq7TtsStOoDrDsZCRld+sNluqdnKcR+5ioLtNgi99qO9KmiS1XTqD2E4
94
+ 1kr/3bWKUugmlYWSNosCZDYz4Qx7Bq6RmGz8CbiWtvu2k5tRo6kp4f2nYZ4P
95
+ 0uGUmcrrYLvbhyj4Hlil8yiztjQ3nscNtmhzEWsuJF2btt4vsG96JT9T534o
96
+ AGs1fcjVXnlH9P+ilPs7kEehlSTAreEyjdUJGWpvv+11GkqO3O43ReXX/G40
97
+ GfDcZnhiiO7lQapHGXojWQNKIRZ20DefrarSmDiswX2VE4MboZ5q+kFAvBRn
98
+ 3QAdydrz8rNW+QjRCdrwGVNhK8RRJg8DZiKdtla1Y6TlMkE3P72nHeeKLlQq
99
+ rZKaKw+7D7IGVEnxdwXtVUIxBl9gM57dKrqjIAvFTHpYuDu9vuWI07vTPjJY
100
+ JrDU9HnCAfr5WSMADbVJoQuHXBsVRflK/t3jewvPvm5qxNIDpYmQQZ5b8J1A
101
+ bm86Ik8HG/EUo7AzQcRLBDnkjXveU/96SRuTpsfl3M17qtgkWpSLvGik73tS
102
+ TfpYiXNYpQypB6PoObvXBInH0taJxSM/2YcaPcOe7iB1qTB1dTp10FhRXWNa
103
+ 6C9LzxLsCPOzTY0iYaL3KPq1ULC9vun1+MCUMLeKOT/ScNoBLI0V2lY9siab
104
+ My2GIa60aThrChZfZqbrOROVOzcjwuvefoqZPcFfCYcTBQB7rXYfg8g/VirS
105
+ NJfBKkkcfBYzsuA7eV5WFlyl0Q4JJiTSrqp5QNBgbBrKAzWU0FsCTYnLyNEp
106
+ vxlzl0XQy7ZqtvOSrZ4SaWEOlGXev0uiy+D3L/73734Ofr3+0P0dU9+ORNC/
107
+ Oh3XotJuJXVYJ5ZCm+GYZXhtqZ4BQ7JT00xMmlL05h8AAAD//wMA4OtY9DkS
108
+ AAA=
109
+ http_version:
110
+ recorded_at: Tue, 20 Oct 2015 12:37:03 GMT
111
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,110 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: post
5
+ uri: https://yd57hn7c4r5bhp8g:1cc8b0097ef43165847630438f864834@api.sandbox.braintreegateway.com/merchants/yccdpmn3cvtjbgnr/transactions
6
+ body:
7
+ encoding: UTF-8
8
+ string: |
9
+ <?xml version="1.0" encoding="UTF-8"?>
10
+ <transaction>
11
+ <customer>
12
+ </customer>
13
+ <payment-method-nonce>fake-valid-nonce</payment-method-nonce>
14
+ <amount>20.00</amount>
15
+ <order-id>R137737230</order-id>
16
+ <descriptor>
17
+ <name></name>
18
+ </descriptor>
19
+ <options>
20
+ <submit-for-settlement type="boolean">false</submit-for-settlement>
21
+ <add-billing-address-to-payment-method type="boolean">false</add-billing-address-to-payment-method>
22
+ <three-d-secure>
23
+ <required type="boolean">false</required>
24
+ </three-d-secure>
25
+ <store-in-vault type="boolean">false</store-in-vault>
26
+ </options>
27
+ <type>sale</type>
28
+ </transaction>
29
+ headers:
30
+ Accept-Encoding:
31
+ - gzip
32
+ Accept:
33
+ - application/xml
34
+ User-Agent:
35
+ - Braintree Ruby Gem 2.49.0
36
+ X-Apiversion:
37
+ - '4'
38
+ Content-Type:
39
+ - application/xml
40
+ response:
41
+ status:
42
+ code: 201
43
+ message: Created
44
+ headers:
45
+ Date:
46
+ - Tue, 20 Oct 2015 12:37:07 GMT
47
+ Content-Type:
48
+ - application/xml; charset=utf-8
49
+ Transfer-Encoding:
50
+ - chunked
51
+ Connection:
52
+ - close
53
+ X-Authentication:
54
+ - basic_auth
55
+ X-User:
56
+ - 97syg9czj6hrdzyn
57
+ Vary:
58
+ - Accept-Encoding
59
+ Content-Encoding:
60
+ - gzip
61
+ X-Ua-Compatible:
62
+ - IE=Edge,chrome=1
63
+ Etag:
64
+ - '"ab37981950c4de5f80d598631c0bca9e"'
65
+ Cache-Control:
66
+ - max-age=0, private, must-revalidate
67
+ X-Request-Id:
68
+ - 4080b67a228b074d15a313e7e0042a2f
69
+ X-Runtime:
70
+ - '1.160613'
71
+ X-Frame-Options:
72
+ - SAMEORIGIN
73
+ Strict-Transport-Security:
74
+ - max-age=31536000; includeSubDomains
75
+ body:
76
+ encoding: ASCII-8BIT
77
+ string: !binary |-
78
+ H4sIAHM1JlYAA+RYS2/jNhC+51cYvjOS7HSdDRQFi6LF9rBFsdn0sJeAFscW
79
+ a4lUScqx8+t3KFGviErSS1GgN2vm45Dz4MxHx3enIl8cQWkuxe0yugyXCxCp
80
+ ZFzsb5cP334l18u75CI2igpNU4Oo5GKxiDlL2NOz2lzFAf60Em2oqXRCK5NJ
81
+ xZ+BxYETWa05l5BomkMc1D+tLK2Uwr3OhGtJcEtIfnn4GgdTsQXTQlbCJKvw
82
+ MgzjwH1ZRQEqzagwhKapFRI8jy6pOmiZV/a8WpfPUsaBD2gNSMVA2Y+v0Xqz
83
+ WW9Wa9ygE9YHVUANMELNwh7+dsnw0/AClnie6CcShWQVfotWN+vNTfjhO7rQ
84
+ LajXVyX7Z+v7BS5Q2kg8vv2oY78QPL9dGlXBMnDCHVfaEEEL8ChzOq9LZVFS
85
+ cfZooKA898ifYKu58dkqMyl88h09vZTaPPdexVue51hy/7KH2igALAjGFGjt
86
+ C8HJgGA2E7OQXKY058ZnXsEe688XJ4lXI2+K++NVFG7iYChqj41Fqs7zXjVq
87
+ u4LQvMzo6l2o9VsoUWFSeDpN2CBH6NquEoxME9VrtCt2qhQ9j5QYz0E/8RnB
88
+ +2s4hkODMTkUgLd1vMJnvG89b5kfmN1Sk2ZeTMbL8n9Zkq8UyH+mFofZcf2R
89
+ 7DjkTLtaOGoCSklFMEYlDgHwulbjBq6P0ckXnDSvAloT46y9AP3WWHkVU7tx
90
+ PE73nwotdI/j4YmeUfMXNFWOE0dPExuXSqa4G8ahvR20hteW1tHHL59/xt7z
91
+ GmhsZXyUKLTDeE47s9JgBSefStQcLUmYQ9ShZYzbk2Dwp7CJr0fJU5ugHSYe
92
+ V2DtbEFNI1JZGoC7NCN+BmXoiTQkw6uCExRlO823UuZAxTLZ0VxbgtMBWvaA
93
+ XpCUKuZK3MgD+O7glovkKoxW19e22YphH7lKouvrKA7ch7sqaJLUdOpPrinW
94
+ SvfdtoqSqyaVhRQmS6JVHEyEE+wZqEJisgpH4Frq9nWTm9hGU1PCh/t+nvfS
95
+ /pSZzOtg+9sHL+geSKXyJDOm1DdBQDW2aH25VZQLe21cvV9i3wxKerad+7EA
96
+ rFX2mMu9DI7o/2Up9ncgjlxJYQG3mgq2lSdkqJ191+sUlBS53e/Sll/zu9Fk
97
+ QHOT4YkheRAHIZ9EHAxkDYjBlpte33w6VaUwcViD+yq3DG6AeqnpBoHlpTjr
98
+ euhA5s5Lz0rmA0QrcOHTusJWiKNMHHrMSDpurXJHrJaKFN28/2R3nCraUElW
99
+ pTVX7nfvZQ2oEvzvCtxVQjEGn2Mzntwqe0dBFJJodpi5O53eccTx3XGPDJJx
100
+ LDV1HnGAbn7WCEBDLin2wiHXRkVRvpN/d/jOwquvmxox90BpIqSR5xZ0x5Hb
101
+ 65bI24MNeIqW2JkgoSWCPPLGveClf53ExaTpcTn1855qq1PFy1leNNB3Pakm
102
+ faTEOSwZQepBbPS83WuExGMp48XikV/sYxs9wZ7uIXWM67o6vTporMi2Mc30
103
+ l7lnCXaE6dnGRpEw2fco+jVTsJ2+6fX4wBQwtYo5P9rhtAOYGyt2W/lEmmxO
104
+ tBiGbaV0w1kZGHyZ6bbnjFT+3AwIr3/7MWbyBH8nHE42ANhrlf8YlvxjpSJN
105
+ 8xms0tTDZzEjM75bz8vKgK803JAgXCDtqpoHhB2MTUN5tA0lDuZAY+IycHTM
106
+ b4bcZRb0tq2a7bxlq6NEiuuDzTLt3iVI4/74Hm6uP2/WH+7bv2Pq25Fy+69O
107
+ y7VsaTtJHdaRpdhkOGYJXltbz4Ah2clxJkZNKbn4AQAA//8DADC2t145EgAA
108
+ http_version:
109
+ recorded_at: Tue, 20 Oct 2015 12:37:07 GMT
110
+ recorded_with: VCR 2.9.3
@@ -0,0 +1,52 @@
1
+ # encoding: UTF-8
2
+ lib = File.expand_path('../lib/', __FILE__)
3
+ $LOAD_PATH.unshift lib unless $LOAD_PATH.include?(lib)
4
+
5
+ require 'spree_braintree_vzero/version'
6
+
7
+ Gem::Specification.new do |s|
8
+ s.platform = Gem::Platform::RUBY
9
+ s.name = 'spree_braintree_vzero'
10
+ s.version = SpreeBraintreeVzero.version
11
+ s.summary = 'Spree Braintree v.zero'
12
+ s.description = 'Braintree v.zero extension for Spree Commerce'
13
+ s.required_ruby_version = '>= 2.0.0'
14
+
15
+ s.author = 'Spark Solutions'
16
+ s.email = 'we@sparksolutions.co'
17
+ s.homepage = 'http://sparksolutions.co'
18
+ s.license = 'BSD-3'
19
+
20
+ s.files = `git ls-files`.split("\n")
21
+ s.test_files = `git ls-files -- spec/*`.split("\n")
22
+ s.require_path = 'lib'
23
+ s.requirements << 'none'
24
+
25
+ spree_version = '>= 3.1.0', '< 5.0'
26
+ s.add_dependency 'spree_core', spree_version
27
+ s.add_dependency 'spree_backend', spree_version
28
+ s.add_dependency 'spree_frontend', spree_version
29
+ s.add_dependency 'spree_extension'
30
+ s.add_dependency 'braintree', '>= 2.40.0'
31
+ s.add_dependency 'deface', '~> 1.0'
32
+ s.add_dependency 'whenever'
33
+
34
+ s.add_development_dependency 'appraisal'
35
+ s.add_development_dependency 'capybara'
36
+ s.add_development_dependency 'codeclimate-test-reporter'
37
+ s.add_development_dependency 'coffee-rails'
38
+ s.add_development_dependency 'database_cleaner'
39
+ s.add_development_dependency 'factory_bot', '~> 4.7'
40
+ s.add_development_dependency 'ffaker'
41
+ s.add_development_dependency 'mini_racer'
42
+ s.add_development_dependency 'mysql2'
43
+ s.add_development_dependency 'pg'
44
+ s.add_development_dependency 'pry'
45
+ s.add_development_dependency 'rspec-rails', '~> 4.0.0.beta2'
46
+ s.add_development_dependency 'sass-rails'
47
+ s.add_development_dependency 'selenium-webdriver'
48
+ s.add_development_dependency 'simplecov'
49
+ s.add_development_dependency 'sqlite3'
50
+ s.add_development_dependency 'vcr'
51
+ s.add_development_dependency 'webmock', '~> 2.3' # https://github.com/bblimke/webmock/issues/683
52
+ end
@@ -0,0 +1,7 @@
1
+ /*
2
+ jQuery Masked Input Plugin
3
+ Copyright (c) 2007 - 2015 Josh Bush (digitalbush.com)
4
+ Licensed under the MIT license (http://digitalbush.com/projects/masked-input-plugin/#license)
5
+ Version: 1.4.1
6
+ */
7
+ !function(a){"function"==typeof define&&define.amd?define(["jquery"],a):a("object"==typeof exports?require("jquery"):jQuery)}(function(a){var b,c=navigator.userAgent,d=/iphone/i.test(c),e=/chrome/i.test(c),f=/android/i.test(c);a.mask={definitions:{9:"[0-9]",a:"[A-Za-z]","*":"[A-Za-z0-9]"},autoclear:!0,dataName:"rawMaskFn",placeholder:"_"},a.fn.extend({caret:function(a,b){var c;if(0!==this.length&&!this.is(":hidden"))return"number"==typeof a?(b="number"==typeof b?b:a,this.each(function(){this.setSelectionRange?this.setSelectionRange(a,b):this.createTextRange&&(c=this.createTextRange(),c.collapse(!0),c.moveEnd("character",b),c.moveStart("character",a),c.select())})):(this[0].setSelectionRange?(a=this[0].selectionStart,b=this[0].selectionEnd):document.selection&&document.selection.createRange&&(c=document.selection.createRange(),a=0-c.duplicate().moveStart("character",-1e5),b=a+c.text.length),{begin:a,end:b})},unmask:function(){return this.trigger("unmask")},mask:function(c,g){var h,i,j,k,l,m,n,o;if(!c&&this.length>0){h=a(this[0]);var p=h.data(a.mask.dataName);return p?p():void 0}return g=a.extend({autoclear:a.mask.autoclear,placeholder:a.mask.placeholder,completed:null},g),i=a.mask.definitions,j=[],k=n=c.length,l=null,a.each(c.split(""),function(a,b){"?"==b?(n--,k=a):i[b]?(j.push(new RegExp(i[b])),null===l&&(l=j.length-1),k>a&&(m=j.length-1)):j.push(null)}),this.trigger("unmask").each(function(){function h(){if(g.completed){for(var a=l;m>=a;a++)if(j[a]&&C[a]===p(a))return;g.completed.call(B)}}function p(a){return g.placeholder.charAt(a<g.placeholder.length?a:0)}function q(a){for(;++a<n&&!j[a];);return a}function r(a){for(;--a>=0&&!j[a];);return a}function s(a,b){var c,d;if(!(0>a)){for(c=a,d=q(b);n>c;c++)if(j[c]){if(!(n>d&&j[c].test(C[d])))break;C[c]=C[d],C[d]=p(d),d=q(d)}z(),B.caret(Math.max(l,a))}}function t(a){var b,c,d,e;for(b=a,c=p(a);n>b;b++)if(j[b]){if(d=q(b),e=C[b],C[b]=c,!(n>d&&j[d].test(e)))break;c=e}}function u(){var a=B.val(),b=B.caret();if(o&&o.length&&o.length>a.length){for(A(!0);b.begin>0&&!j[b.begin-1];)b.begin--;if(0===b.begin)for(;b.begin<l&&!j[b.begin];)b.begin++;B.caret(b.begin,b.begin)}else{for(A(!0);b.begin<n&&!j[b.begin];)b.begin++;B.caret(b.begin,b.begin)}h()}function v(){A(),B.val()!=E&&B.change()}function w(a){if(!B.prop("readonly")){var b,c,e,f=a.which||a.keyCode;o=B.val(),8===f||46===f||d&&127===f?(b=B.caret(),c=b.begin,e=b.end,e-c===0&&(c=46!==f?r(c):e=q(c-1),e=46===f?q(e):e),y(c,e),s(c,e-1),a.preventDefault()):13===f?v.call(this,a):27===f&&(B.val(E),B.caret(0,A()),a.preventDefault())}}function x(b){if(!B.prop("readonly")){var c,d,e,g=b.which||b.keyCode,i=B.caret();if(!(b.ctrlKey||b.altKey||b.metaKey||32>g)&&g&&13!==g){if(i.end-i.begin!==0&&(y(i.begin,i.end),s(i.begin,i.end-1)),c=q(i.begin-1),n>c&&(d=String.fromCharCode(g),j[c].test(d))){if(t(c),C[c]=d,z(),e=q(c),f){var k=function(){a.proxy(a.fn.caret,B,e)()};setTimeout(k,0)}else B.caret(e);i.begin<=m&&h()}b.preventDefault()}}}function y(a,b){var c;for(c=a;b>c&&n>c;c++)j[c]&&(C[c]=p(c))}function z(){B.val(C.join(""))}function A(a){var b,c,d,e=B.val(),f=-1;for(b=0,d=0;n>b;b++)if(j[b]){for(C[b]=p(b);d++<e.length;)if(c=e.charAt(d-1),j[b].test(c)){C[b]=c,f=b;break}if(d>e.length){y(b+1,n);break}}else C[b]===e.charAt(d)&&d++,k>b&&(f=b);return a?z():k>f+1?g.autoclear||C.join("")===D?(B.val()&&B.val(""),y(0,n)):z():(z(),B.val(B.val().substring(0,f+1))),k?b:l}var B=a(this),C=a.map(c.split(""),function(a,b){return"?"!=a?i[a]?p(b):a:void 0}),D=C.join(""),E=B.val();B.data(a.mask.dataName,function(){return a.map(C,function(a,b){return j[b]&&a!=p(b)?a:null}).join("")}),B.one("unmask",function(){B.off(".mask").removeData(a.mask.dataName)}).on("focus.mask",function(){if(!B.prop("readonly")){clearTimeout(b);var a;E=B.val(),a=A(),b=setTimeout(function(){B.get(0)===document.activeElement&&(z(),a==c.replace("?","").length?B.caret(0,a):B.caret(a))},10)}}).on("blur.mask",v).on("keydown.mask",w).on("keypress.mask",x).on("input.mask paste.mask",function(){B.prop("readonly")||setTimeout(function(){var a=A(!0);B.caret(a),h()},0)}),e&&f&&B.off("input.mask").on("input.mask",u),A()})}})});
metadata ADDED
@@ -0,0 +1,643 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: spree_braintree_vzero
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.5.1
5
+ platform: ruby
6
+ authors:
7
+ - Spark Solutions
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2020-02-25 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: spree_core
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 3.1.0
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '5.0'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: 3.1.0
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '5.0'
33
+ - !ruby/object:Gem::Dependency
34
+ name: spree_backend
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: 3.1.0
40
+ - - "<"
41
+ - !ruby/object:Gem::Version
42
+ version: '5.0'
43
+ type: :runtime
44
+ prerelease: false
45
+ version_requirements: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: 3.1.0
50
+ - - "<"
51
+ - !ruby/object:Gem::Version
52
+ version: '5.0'
53
+ - !ruby/object:Gem::Dependency
54
+ name: spree_frontend
55
+ requirement: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - ">="
58
+ - !ruby/object:Gem::Version
59
+ version: 3.1.0
60
+ - - "<"
61
+ - !ruby/object:Gem::Version
62
+ version: '5.0'
63
+ type: :runtime
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: 3.1.0
70
+ - - "<"
71
+ - !ruby/object:Gem::Version
72
+ version: '5.0'
73
+ - !ruby/object:Gem::Dependency
74
+ name: spree_extension
75
+ requirement: !ruby/object:Gem::Requirement
76
+ requirements:
77
+ - - ">="
78
+ - !ruby/object:Gem::Version
79
+ version: '0'
80
+ type: :runtime
81
+ prerelease: false
82
+ version_requirements: !ruby/object:Gem::Requirement
83
+ requirements:
84
+ - - ">="
85
+ - !ruby/object:Gem::Version
86
+ version: '0'
87
+ - !ruby/object:Gem::Dependency
88
+ name: braintree
89
+ requirement: !ruby/object:Gem::Requirement
90
+ requirements:
91
+ - - ">="
92
+ - !ruby/object:Gem::Version
93
+ version: 2.40.0
94
+ type: :runtime
95
+ prerelease: false
96
+ version_requirements: !ruby/object:Gem::Requirement
97
+ requirements:
98
+ - - ">="
99
+ - !ruby/object:Gem::Version
100
+ version: 2.40.0
101
+ - !ruby/object:Gem::Dependency
102
+ name: deface
103
+ requirement: !ruby/object:Gem::Requirement
104
+ requirements:
105
+ - - "~>"
106
+ - !ruby/object:Gem::Version
107
+ version: '1.0'
108
+ type: :runtime
109
+ prerelease: false
110
+ version_requirements: !ruby/object:Gem::Requirement
111
+ requirements:
112
+ - - "~>"
113
+ - !ruby/object:Gem::Version
114
+ version: '1.0'
115
+ - !ruby/object:Gem::Dependency
116
+ name: whenever
117
+ requirement: !ruby/object:Gem::Requirement
118
+ requirements:
119
+ - - ">="
120
+ - !ruby/object:Gem::Version
121
+ version: '0'
122
+ type: :runtime
123
+ prerelease: false
124
+ version_requirements: !ruby/object:Gem::Requirement
125
+ requirements:
126
+ - - ">="
127
+ - !ruby/object:Gem::Version
128
+ version: '0'
129
+ - !ruby/object:Gem::Dependency
130
+ name: appraisal
131
+ requirement: !ruby/object:Gem::Requirement
132
+ requirements:
133
+ - - ">="
134
+ - !ruby/object:Gem::Version
135
+ version: '0'
136
+ type: :development
137
+ prerelease: false
138
+ version_requirements: !ruby/object:Gem::Requirement
139
+ requirements:
140
+ - - ">="
141
+ - !ruby/object:Gem::Version
142
+ version: '0'
143
+ - !ruby/object:Gem::Dependency
144
+ name: capybara
145
+ requirement: !ruby/object:Gem::Requirement
146
+ requirements:
147
+ - - ">="
148
+ - !ruby/object:Gem::Version
149
+ version: '0'
150
+ type: :development
151
+ prerelease: false
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ requirements:
154
+ - - ">="
155
+ - !ruby/object:Gem::Version
156
+ version: '0'
157
+ - !ruby/object:Gem::Dependency
158
+ name: codeclimate-test-reporter
159
+ requirement: !ruby/object:Gem::Requirement
160
+ requirements:
161
+ - - ">="
162
+ - !ruby/object:Gem::Version
163
+ version: '0'
164
+ type: :development
165
+ prerelease: false
166
+ version_requirements: !ruby/object:Gem::Requirement
167
+ requirements:
168
+ - - ">="
169
+ - !ruby/object:Gem::Version
170
+ version: '0'
171
+ - !ruby/object:Gem::Dependency
172
+ name: coffee-rails
173
+ requirement: !ruby/object:Gem::Requirement
174
+ requirements:
175
+ - - ">="
176
+ - !ruby/object:Gem::Version
177
+ version: '0'
178
+ type: :development
179
+ prerelease: false
180
+ version_requirements: !ruby/object:Gem::Requirement
181
+ requirements:
182
+ - - ">="
183
+ - !ruby/object:Gem::Version
184
+ version: '0'
185
+ - !ruby/object:Gem::Dependency
186
+ name: database_cleaner
187
+ requirement: !ruby/object:Gem::Requirement
188
+ requirements:
189
+ - - ">="
190
+ - !ruby/object:Gem::Version
191
+ version: '0'
192
+ type: :development
193
+ prerelease: false
194
+ version_requirements: !ruby/object:Gem::Requirement
195
+ requirements:
196
+ - - ">="
197
+ - !ruby/object:Gem::Version
198
+ version: '0'
199
+ - !ruby/object:Gem::Dependency
200
+ name: factory_bot
201
+ requirement: !ruby/object:Gem::Requirement
202
+ requirements:
203
+ - - "~>"
204
+ - !ruby/object:Gem::Version
205
+ version: '4.7'
206
+ type: :development
207
+ prerelease: false
208
+ version_requirements: !ruby/object:Gem::Requirement
209
+ requirements:
210
+ - - "~>"
211
+ - !ruby/object:Gem::Version
212
+ version: '4.7'
213
+ - !ruby/object:Gem::Dependency
214
+ name: ffaker
215
+ requirement: !ruby/object:Gem::Requirement
216
+ requirements:
217
+ - - ">="
218
+ - !ruby/object:Gem::Version
219
+ version: '0'
220
+ type: :development
221
+ prerelease: false
222
+ version_requirements: !ruby/object:Gem::Requirement
223
+ requirements:
224
+ - - ">="
225
+ - !ruby/object:Gem::Version
226
+ version: '0'
227
+ - !ruby/object:Gem::Dependency
228
+ name: mini_racer
229
+ requirement: !ruby/object:Gem::Requirement
230
+ requirements:
231
+ - - ">="
232
+ - !ruby/object:Gem::Version
233
+ version: '0'
234
+ type: :development
235
+ prerelease: false
236
+ version_requirements: !ruby/object:Gem::Requirement
237
+ requirements:
238
+ - - ">="
239
+ - !ruby/object:Gem::Version
240
+ version: '0'
241
+ - !ruby/object:Gem::Dependency
242
+ name: mysql2
243
+ requirement: !ruby/object:Gem::Requirement
244
+ requirements:
245
+ - - ">="
246
+ - !ruby/object:Gem::Version
247
+ version: '0'
248
+ type: :development
249
+ prerelease: false
250
+ version_requirements: !ruby/object:Gem::Requirement
251
+ requirements:
252
+ - - ">="
253
+ - !ruby/object:Gem::Version
254
+ version: '0'
255
+ - !ruby/object:Gem::Dependency
256
+ name: pg
257
+ requirement: !ruby/object:Gem::Requirement
258
+ requirements:
259
+ - - ">="
260
+ - !ruby/object:Gem::Version
261
+ version: '0'
262
+ type: :development
263
+ prerelease: false
264
+ version_requirements: !ruby/object:Gem::Requirement
265
+ requirements:
266
+ - - ">="
267
+ - !ruby/object:Gem::Version
268
+ version: '0'
269
+ - !ruby/object:Gem::Dependency
270
+ name: pry
271
+ requirement: !ruby/object:Gem::Requirement
272
+ requirements:
273
+ - - ">="
274
+ - !ruby/object:Gem::Version
275
+ version: '0'
276
+ type: :development
277
+ prerelease: false
278
+ version_requirements: !ruby/object:Gem::Requirement
279
+ requirements:
280
+ - - ">="
281
+ - !ruby/object:Gem::Version
282
+ version: '0'
283
+ - !ruby/object:Gem::Dependency
284
+ name: rspec-rails
285
+ requirement: !ruby/object:Gem::Requirement
286
+ requirements:
287
+ - - "~>"
288
+ - !ruby/object:Gem::Version
289
+ version: 4.0.0.beta2
290
+ type: :development
291
+ prerelease: false
292
+ version_requirements: !ruby/object:Gem::Requirement
293
+ requirements:
294
+ - - "~>"
295
+ - !ruby/object:Gem::Version
296
+ version: 4.0.0.beta2
297
+ - !ruby/object:Gem::Dependency
298
+ name: sass-rails
299
+ requirement: !ruby/object:Gem::Requirement
300
+ requirements:
301
+ - - ">="
302
+ - !ruby/object:Gem::Version
303
+ version: '0'
304
+ type: :development
305
+ prerelease: false
306
+ version_requirements: !ruby/object:Gem::Requirement
307
+ requirements:
308
+ - - ">="
309
+ - !ruby/object:Gem::Version
310
+ version: '0'
311
+ - !ruby/object:Gem::Dependency
312
+ name: selenium-webdriver
313
+ requirement: !ruby/object:Gem::Requirement
314
+ requirements:
315
+ - - ">="
316
+ - !ruby/object:Gem::Version
317
+ version: '0'
318
+ type: :development
319
+ prerelease: false
320
+ version_requirements: !ruby/object:Gem::Requirement
321
+ requirements:
322
+ - - ">="
323
+ - !ruby/object:Gem::Version
324
+ version: '0'
325
+ - !ruby/object:Gem::Dependency
326
+ name: simplecov
327
+ requirement: !ruby/object:Gem::Requirement
328
+ requirements:
329
+ - - ">="
330
+ - !ruby/object:Gem::Version
331
+ version: '0'
332
+ type: :development
333
+ prerelease: false
334
+ version_requirements: !ruby/object:Gem::Requirement
335
+ requirements:
336
+ - - ">="
337
+ - !ruby/object:Gem::Version
338
+ version: '0'
339
+ - !ruby/object:Gem::Dependency
340
+ name: sqlite3
341
+ requirement: !ruby/object:Gem::Requirement
342
+ requirements:
343
+ - - ">="
344
+ - !ruby/object:Gem::Version
345
+ version: '0'
346
+ type: :development
347
+ prerelease: false
348
+ version_requirements: !ruby/object:Gem::Requirement
349
+ requirements:
350
+ - - ">="
351
+ - !ruby/object:Gem::Version
352
+ version: '0'
353
+ - !ruby/object:Gem::Dependency
354
+ name: vcr
355
+ requirement: !ruby/object:Gem::Requirement
356
+ requirements:
357
+ - - ">="
358
+ - !ruby/object:Gem::Version
359
+ version: '0'
360
+ type: :development
361
+ prerelease: false
362
+ version_requirements: !ruby/object:Gem::Requirement
363
+ requirements:
364
+ - - ">="
365
+ - !ruby/object:Gem::Version
366
+ version: '0'
367
+ - !ruby/object:Gem::Dependency
368
+ name: webmock
369
+ requirement: !ruby/object:Gem::Requirement
370
+ requirements:
371
+ - - "~>"
372
+ - !ruby/object:Gem::Version
373
+ version: '2.3'
374
+ type: :development
375
+ prerelease: false
376
+ version_requirements: !ruby/object:Gem::Requirement
377
+ requirements:
378
+ - - "~>"
379
+ - !ruby/object:Gem::Version
380
+ version: '2.3'
381
+ description: Braintree v.zero extension for Spree Commerce
382
+ email: we@sparksolutions.co
383
+ executables: []
384
+ extensions: []
385
+ extra_rdoc_files: []
386
+ files:
387
+ - ".codeclimate.yml"
388
+ - ".gitignore"
389
+ - ".rspec"
390
+ - ".travis.yml"
391
+ - Appraisals
392
+ - CONTRIBUTING.md
393
+ - Gemfile
394
+ - LICENSE
395
+ - README.md
396
+ - Rakefile
397
+ - app/assets/images/credit_cards/icons/jcb.png
398
+ - app/assets/javascripts/spree/backend/payments.js
399
+ - app/assets/javascripts/spree/backend/spree_braintree_vzero.js
400
+ - app/assets/javascripts/spree/frontend/spree_braintree_vzero.js
401
+ - app/assets/stylesheets/spree/backend/spree_braintree_vzero.css
402
+ - app/controllers/spree/admin/payments_controller_decorator.rb
403
+ - app/controllers/spree/api/v1/braintree_client_token_controller.rb
404
+ - app/controllers/spree/checkout_controller_decorator.rb
405
+ - app/controllers/spree/orders_controller_decorator.rb
406
+ - app/controllers/spree/user_sessions_controller_decorator.rb
407
+ - app/helpers/spree/admin/decorated_navigation_helper.rb
408
+ - app/helpers/spree/admin/payment_methods_helper.rb
409
+ - app/helpers/spree/braintree_helper.rb
410
+ - app/models/braintree/successful_result_decorator.rb
411
+ - app/models/spree/address_decorator.rb
412
+ - app/models/spree/braintree_checkout.rb
413
+ - app/models/spree/gateway/braintree_vzero_base.rb
414
+ - app/models/spree/gateway/braintree_vzero_base/address.rb
415
+ - app/models/spree/gateway/braintree_vzero_base/braintree_user.rb
416
+ - app/models/spree/gateway/braintree_vzero_base/purchase_data.rb
417
+ - app/models/spree/gateway/braintree_vzero_base/transaction.rb
418
+ - app/models/spree/gateway/braintree_vzero_base/utils.rb
419
+ - app/models/spree/gateway/braintree_vzero_drop_in_ui.rb
420
+ - app/models/spree/gateway/braintree_vzero_hosted_fields.rb
421
+ - app/models/spree/gateway/braintree_vzero_paypal_express.rb
422
+ - app/models/spree/order_decorator.rb
423
+ - app/models/spree/payment_decorator.rb
424
+ - app/models/spree/payment_processing_decorator.rb
425
+ - app/models/spree/preferences/preferable_decorator.rb
426
+ - app/overrides/spree/admin/orders/customer_details/_form.rb
427
+ - app/overrides/spree/admin/payment_methods/_form.rb
428
+ - app/overrides/spree/admin/shared/_order_summary.rb
429
+ - app/overrides/spree/admin/shared/_refunds.rb
430
+ - app/overrides/spree/checkout/_new_user.rb
431
+ - app/overrides/spree/checkout/_payment.rb
432
+ - app/overrides/spree/checkout/registration.rb
433
+ - app/overrides/spree/orders/edit.rb
434
+ - app/overrides/spree/shared/_order_details.rb
435
+ - app/overrides/spree/shared/_payment.rb
436
+ - app/views/spree/admin/payment_methods/_braintree_vzero_form.html.erb
437
+ - app/views/spree/admin/payments/source_forms/_braintree_vzero_dropin_ui.html.erb
438
+ - app/views/spree/admin/payments/source_forms/_braintree_vzero_hosted_fields.html.erb
439
+ - app/views/spree/admin/payments/source_forms/_braintree_vzero_paypal_express.html.erb
440
+ - app/views/spree/admin/payments/source_forms/braintree_vzero/_payments.html.erb
441
+ - app/views/spree/admin/payments/source_views/_braintree_vzero_dropin_ui.html.erb
442
+ - app/views/spree/admin/payments/source_views/_braintree_vzero_hosted_fields.html.erb
443
+ - app/views/spree/admin/payments/source_views/_braintree_vzero_paypal_express.html.erb
444
+ - app/views/spree/admin/payments/source_views/braintree_vzero/_payment.html.erb
445
+ - app/views/spree/braintree_vzero/_paypal_checkout.html.erb
446
+ - app/views/spree/checkout/payment/_braintree_vzero_dropin_ui.html.erb
447
+ - app/views/spree/checkout/payment/_braintree_vzero_hosted_fields.html.erb
448
+ - app/views/spree/checkout/payment/_braintree_vzero_paypal_express.html.erb
449
+ - app/views/spree/checkout/payment/braintree_vzero/_buttons.html.erb
450
+ - app/views/spree/checkout/payment/braintree_vzero/_dropin_on_error_callback.js.erb
451
+ - app/views/spree/checkout/payment/braintree_vzero/_dropin_on_ready_callback.js.erb
452
+ - app/views/spree/checkout/payment/braintree_vzero/_hosted_fields_on_field_event_callback.js.erb
453
+ - app/views/spree/checkout/payment/braintree_vzero/_hosted_fields_styles.js.erb
454
+ - app/views/spree/checkout/payment/braintree_vzero/_payment.html.erb
455
+ - app/views/spree/checkout/payment/braintree_vzero/_three_d_secure.html.erb
456
+ - app/views/spree/shared/braintree_vzero/_dropin.js.erb
457
+ - app/views/spree/shared/braintree_vzero/_hosted.js.erb
458
+ - app/views/spree/shared/braintree_vzero/_paypal.js.erb
459
+ - bin/rails
460
+ - config/initializers/extend_spree_permitted_checkout_attributes.rb
461
+ - config/initializers/prepend_helpers.rb
462
+ - config/locales/en.yml
463
+ - config/routes.rb
464
+ - db/migrate/20150904143013_create_spree_braintree_checkouts.rb
465
+ - db/migrate/20151002094655_add_braintree_id_to_spree_addresses.rb
466
+ - db/migrate/20151018123907_add_braintree_token_and_nonce_to_spree_payments.rb
467
+ - db/migrate/20151027135109_add_paypal_email_to_spree_braintree_checkout.rb
468
+ - db/migrate/20151028095515_add_advanced_fraud_data_to_spree_braintree_checkout.rb
469
+ - db/migrate/20151202095956_add_risk_id_and_risk_decision_to_spree_braintree_checkouts.rb
470
+ - db/migrate/20151211100203_add_braintree_last_digits_and_braintree_card_type_to_spree_braintree_checkouts.rb
471
+ - db/migrate/20160112153422_add_admin_payment_to_spree_braintree_checkout.rb
472
+ - gemfiles/spree_3_5.gemfile
473
+ - gemfiles/spree_3_5_spree_auth_devise.gemfile
474
+ - gemfiles/spree_3_7.gemfile
475
+ - gemfiles/spree_3_7_spree_auth_devise.gemfile
476
+ - gemfiles/spree_4_0.gemfile
477
+ - gemfiles/spree_4_0_spree_auth_devise.gemfile
478
+ - gemfiles/spree_master.gemfile
479
+ - gemfiles/spree_master_spree_auth_devise.gemfile
480
+ - lib/generators/spree_braintree_vzero/install/install_generator.rb
481
+ - lib/spree_braintree_vzero.rb
482
+ - lib/spree_braintree_vzero/engine.rb
483
+ - lib/spree_braintree_vzero/factories.rb
484
+ - lib/spree_braintree_vzero/railtie.rb
485
+ - lib/spree_braintree_vzero/version.rb
486
+ - lib/tasks/spree_braintree_vzero.rake
487
+ - spec/controllers/spree/api/v1/braintree_client_token_controller_spec.rb
488
+ - spec/controllers/spree/checkout_controller_spec.rb
489
+ - spec/controllers/spree/orders_controller_spec.rb
490
+ - spec/factories/braintree_checkout_factory.rb
491
+ - spec/factories/braintree_gateway_factory.rb
492
+ - spec/factories/payment_factory_decorator.rb
493
+ - spec/features/spree/admin/log_entries_spec.rb
494
+ - spec/models/gateway/braintree_vzero_base/address_spec.rb
495
+ - spec/models/gateway/braintree_vzero_base/purchase_data_spec.rb
496
+ - spec/models/gateway/braintree_vzero_base_spec.rb
497
+ - spec/models/gateway/braintree_vzero_dropin_ui_spec.rb
498
+ - spec/models/gateway/braintree_vzero_hosted_fields_spec.rb
499
+ - spec/models/spree/order_spec.rb
500
+ - spec/spec_helper.rb
501
+ - spec/support/vcr.rb
502
+ - spec/vcr/Log_entries/with_a_failed_log_entry/shows_a_failed_attempt.yml
503
+ - spec/vcr/Log_entries/with_a_successful_log_entry/shows_a_successful_attempt.yml
504
+ - spec/vcr/Spree_Api_V1_BraintreeClientTokenController/POST_create/guest_checkout/returns_proper_json_data_when_gateway_not_specified.yml
505
+ - spec/vcr/Spree_Api_V1_BraintreeClientTokenController/POST_create/guest_checkout/returns_proper_json_data_when_gateway_specified.yml
506
+ - spec/vcr/Spree_Api_V1_BraintreeClientTokenController/POST_create/user_checkout/returns_proper_json_data_when_gateway_not_specified.yml
507
+ - spec/vcr/Spree_Api_V1_BraintreeClientTokenController/POST_create/user_checkout/returns_proper_json_data_when_gateway_specified.yml
508
+ - spec/vcr/Spree_CheckoutController/_update/braintree_payment/advanced_fraud_data_in_source_should_be_updated.yml
509
+ - spec/vcr/Spree_CheckoutController/_update/braintree_payment/when_token_credit_card_data_in_source_should_be_updated_from_Braintree_Vault.yml
510
+ - spec/vcr/Spree_CheckoutController/_update/braintree_paypal_express_payment/amount_in_payment_should_be_updated.yml
511
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_capture/captures_authorized_amount/updates_Payment_state.yml
512
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_credit/with_refundable_state/should_be_a_success.yml
513
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_credit/with_unrefundable_state/should_not_be_a_success.yml
514
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/data_from_admin_panel/should_include_only_essential_data.yml
515
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/does_not_store_Transaction_in_Vault_by_default.yml
516
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/returns_false_with_invalid_nonce.yml
517
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/returns_false_with_invalid_token.yml
518
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/returns_success_with_valid_token.yml
519
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/returns_suceess_with_valid_nonce.yml
520
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/using_Vault/saves_Braintree_Address_id_to_Spree_Address_when_address_is_being_saved.yml
521
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/using_Vault/saves_unique_Braintree_Addresses_ids.yml
522
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/using_Vault/sends_empty_address_id_when_address_is_already_in_vault.yml
523
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/using_Vault/stores_Transaction.yml
524
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/with_3DSecure_option_turned_on/performs_3DSecure_check.yml
525
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/with_3DSecure_option_turned_on/returns_error.yml
526
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/with_advanced_fraud_tool_enabled/returns_fraud_data.yml
527
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/with_advanced_fraud_tool_enabled/returns_success.yml
528
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_settle/settles_authorized_amount/does_not_update_Order_payment_state.yml
529
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_settle/settles_authorized_amount/prepares_Checkout_for_status_updating.yml
530
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_settle/settles_authorized_amount/submits_Transaction_for_settlement.yml
531
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_settle/settles_authorized_amount/updates_Payment_state.yml
532
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_update_states/does_not_update_completed_Checkout_on_subsequent_runs.yml
533
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_update_states/updates_Order_payment_state_when_Checkout_is_updated.yml
534
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_update_states/updates_Payment_state_when_Checkout_is_updated.yml
535
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_update_states/updates_payment_State.yml
536
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_void/with_unvoidable_state/should_not_change_payment_source_state.yml
537
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_void/with_voidable_state/should_change_payment_source_state_to_voided.yml
538
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/generates_token_for_User_registered_in_Braintree.yml
539
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/generates_token_for_new_User.yml
540
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/generates_token_without_User.yml
541
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/with_invalid_credentials/raises_Braintree_error.yml
542
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase_Address/_create/creates_Braintree_Address.yml
543
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase_Address/_create/deletes_Braintree_Address.yml
544
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase_Address/_create/finds_Braintree_Address.yml
545
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase_Address/_create/updates_Braintree_Address.yml
546
+ - spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/with_auto_capture/should_complete_payment.yml
547
+ - spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/with_auto_capture/should_update_payment_s_response_code.yml
548
+ - spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/with_auto_capture/should_update_payment_s_source_state_and_transaction_id.yml
549
+ - spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/without_auto_capture/should_pend_payment.yml
550
+ - spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/without_auto_capture/should_update_payment_s_response_code.yml
551
+ - spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/without_auto_capture/should_update_payment_s_source_state_and_transaction_id.yml
552
+ - spree_braintree_vzero.gemspec
553
+ - vendor/assets/javascripts/maskedinput/jquery.maskedinput.min.js
554
+ homepage: http://sparksolutions.co
555
+ licenses:
556
+ - BSD-3
557
+ metadata: {}
558
+ post_install_message:
559
+ rdoc_options: []
560
+ require_paths:
561
+ - lib
562
+ required_ruby_version: !ruby/object:Gem::Requirement
563
+ requirements:
564
+ - - ">="
565
+ - !ruby/object:Gem::Version
566
+ version: 2.0.0
567
+ required_rubygems_version: !ruby/object:Gem::Requirement
568
+ requirements:
569
+ - - ">="
570
+ - !ruby/object:Gem::Version
571
+ version: '0'
572
+ requirements:
573
+ - none
574
+ rubygems_version: 3.0.2
575
+ signing_key:
576
+ specification_version: 4
577
+ summary: Spree Braintree v.zero
578
+ test_files:
579
+ - spec/controllers/spree/api/v1/braintree_client_token_controller_spec.rb
580
+ - spec/controllers/spree/checkout_controller_spec.rb
581
+ - spec/controllers/spree/orders_controller_spec.rb
582
+ - spec/factories/braintree_checkout_factory.rb
583
+ - spec/factories/braintree_gateway_factory.rb
584
+ - spec/factories/payment_factory_decorator.rb
585
+ - spec/features/spree/admin/log_entries_spec.rb
586
+ - spec/models/gateway/braintree_vzero_base/address_spec.rb
587
+ - spec/models/gateway/braintree_vzero_base/purchase_data_spec.rb
588
+ - spec/models/gateway/braintree_vzero_base_spec.rb
589
+ - spec/models/gateway/braintree_vzero_dropin_ui_spec.rb
590
+ - spec/models/gateway/braintree_vzero_hosted_fields_spec.rb
591
+ - spec/models/spree/order_spec.rb
592
+ - spec/spec_helper.rb
593
+ - spec/support/vcr.rb
594
+ - spec/vcr/Log_entries/with_a_failed_log_entry/shows_a_failed_attempt.yml
595
+ - spec/vcr/Log_entries/with_a_successful_log_entry/shows_a_successful_attempt.yml
596
+ - spec/vcr/Spree_Api_V1_BraintreeClientTokenController/POST_create/guest_checkout/returns_proper_json_data_when_gateway_not_specified.yml
597
+ - spec/vcr/Spree_Api_V1_BraintreeClientTokenController/POST_create/guest_checkout/returns_proper_json_data_when_gateway_specified.yml
598
+ - spec/vcr/Spree_Api_V1_BraintreeClientTokenController/POST_create/user_checkout/returns_proper_json_data_when_gateway_not_specified.yml
599
+ - spec/vcr/Spree_Api_V1_BraintreeClientTokenController/POST_create/user_checkout/returns_proper_json_data_when_gateway_specified.yml
600
+ - spec/vcr/Spree_CheckoutController/_update/braintree_payment/advanced_fraud_data_in_source_should_be_updated.yml
601
+ - spec/vcr/Spree_CheckoutController/_update/braintree_payment/when_token_credit_card_data_in_source_should_be_updated_from_Braintree_Vault.yml
602
+ - spec/vcr/Spree_CheckoutController/_update/braintree_paypal_express_payment/amount_in_payment_should_be_updated.yml
603
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_capture/captures_authorized_amount/updates_Payment_state.yml
604
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_credit/with_refundable_state/should_be_a_success.yml
605
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_credit/with_unrefundable_state/should_not_be_a_success.yml
606
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/data_from_admin_panel/should_include_only_essential_data.yml
607
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/does_not_store_Transaction_in_Vault_by_default.yml
608
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/returns_false_with_invalid_nonce.yml
609
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/returns_false_with_invalid_token.yml
610
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/returns_success_with_valid_token.yml
611
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/returns_suceess_with_valid_nonce.yml
612
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/using_Vault/saves_Braintree_Address_id_to_Spree_Address_when_address_is_being_saved.yml
613
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/using_Vault/saves_unique_Braintree_Addresses_ids.yml
614
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/using_Vault/sends_empty_address_id_when_address_is_already_in_vault.yml
615
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/using_Vault/stores_Transaction.yml
616
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/with_3DSecure_option_turned_on/performs_3DSecure_check.yml
617
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/with_3DSecure_option_turned_on/returns_error.yml
618
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/with_advanced_fraud_tool_enabled/returns_fraud_data.yml
619
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_purchase/with_advanced_fraud_tool_enabled/returns_success.yml
620
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_settle/settles_authorized_amount/does_not_update_Order_payment_state.yml
621
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_settle/settles_authorized_amount/prepares_Checkout_for_status_updating.yml
622
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_settle/settles_authorized_amount/submits_Transaction_for_settlement.yml
623
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_settle/settles_authorized_amount/updates_Payment_state.yml
624
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_update_states/does_not_update_completed_Checkout_on_subsequent_runs.yml
625
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_update_states/updates_Order_payment_state_when_Checkout_is_updated.yml
626
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_update_states/updates_Payment_state_when_Checkout_is_updated.yml
627
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_update_states/updates_payment_State.yml
628
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_void/with_unvoidable_state/should_not_change_payment_source_state.yml
629
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/_void/with_voidable_state/should_change_payment_source_state_to_voided.yml
630
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/generates_token_for_User_registered_in_Braintree.yml
631
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/generates_token_for_new_User.yml
632
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/valid_credentials/generates_token_without_User.yml
633
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase/with_invalid_credentials/raises_Braintree_error.yml
634
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase_Address/_create/creates_Braintree_Address.yml
635
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase_Address/_create/deletes_Braintree_Address.yml
636
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase_Address/_create/finds_Braintree_Address.yml
637
+ - spec/vcr/Spree_Gateway_BraintreeVzeroBase_Address/_create/updates_Braintree_Address.yml
638
+ - spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/with_auto_capture/should_complete_payment.yml
639
+ - spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/with_auto_capture/should_update_payment_s_response_code.yml
640
+ - spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/with_auto_capture/should_update_payment_s_source_state_and_transaction_id.yml
641
+ - spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/without_auto_capture/should_pend_payment.yml
642
+ - spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/without_auto_capture/should_update_payment_s_response_code.yml
643
+ - spec/vcr/Spree_Order/complete_with_braintree_vzero_standard_payment/without_auto_capture/should_update_payment_s_source_state_and_transaction_id.yml