suretax 1.0.2 → 1.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: b5d53ab784021867bfd2f58a97c7e2f419fc4198
4
- data.tar.gz: f540f107cc97af0d594dda3e7bcdc93b0ff88878
2
+ SHA256:
3
+ metadata.gz: 620a9d4fb40588a041c883da4f0ebeba65d78a03b1b215808c1ad92b8d5cd48d
4
+ data.tar.gz: 1070aa9064d87eddfa9e541e75cfd45413f95fb9baff06718ae4505b108a76a3
5
5
  SHA512:
6
- metadata.gz: d96a1068aac2f733470687d58bff68bd27bed67f7a5e8fcc48b23a834f6e85113a9a92a9698aa3d5603087809b6da9915d21d21d440e88371c6ddbf8b6c09353
7
- data.tar.gz: 7438dd784baecae802d71d563ebd7f6f5e4d824328e42b1c70a9e6866b407aaaba5371d070bee568b52b28cf184686ed3cc63d72904700e02d3250d1d725f7e1
6
+ metadata.gz: 38ded09d6aa2104b5aa384669a6f5a51ee18178844b0a1e08909cefc9cb8ba549d6a46ce12d167786c872990bf83158e62b33d5274fd696e8bb0f1d977f4792d
7
+ data.tar.gz: c6931fb4060cb38e409f6b9adead8a81c5b8eb30c6f1af566c678afecb70008dd1ab96b7dce02be95107b481dfc5de8c18f287955cd371cb1e106e11662804e3
@@ -0,0 +1,44 @@
1
+ version: 2
2
+ jobs:
3
+ build:
4
+ docker:
5
+ - image: circleci/ruby:2.7.0
6
+ environment:
7
+ RAILS_ENV: test
8
+ RAKE_ENV: test
9
+ SURETAX_BASE_URL: "https://testapi.taxrating.net"
10
+ SURETAX_VALIDATION_KEY: "xxxxxxxxxx"
11
+ SURETAX_CLIENT_NUMBER: "000000000"
12
+ SURETAX_POST_PATH: "/Services/V01/SureTax.asmx/PostRequest"
13
+ SURETAX_CANCEL_PATH: "/Services/V01/SureTax.asmx/CancelPostRequest"
14
+ working_directory: ~/suretax
15
+ steps:
16
+ - checkout
17
+ - restore_cache:
18
+ keys:
19
+ - v1-dependencies-{{ checksum "Gemfile.lock" }}
20
+ # fallback to using the latest cache if no exact match is found
21
+ - v1-dependencies-
22
+ - run:
23
+ name: install dependencies
24
+ command: |
25
+ bundle install --jobs=4 --retry=3 --path vendor/bundle
26
+ - save_cache:
27
+ paths:
28
+ - ./vendor/bundle
29
+ key: v1-dependencies-{{ checksum "Gemfile.lock" }}
30
+ - run:
31
+ name: run tests
32
+ command: |
33
+ mkdir /tmp/test-results
34
+ TEST_FILES="$(circleci tests glob "spec/**/*_spec.rb" | circleci tests split --split-by=timings)"
35
+ bundle exec rspec --format progress \
36
+ --format RspecJunitFormatter \
37
+ --out /tmp/test-results/rspec.xml \
38
+ --format progress \
39
+ $TEST_FILES
40
+ - store_test_results:
41
+ path: /tmp/test-results
42
+ - store_artifacts:
43
+ path: /tmp/test-results
44
+ destination: test-results
@@ -0,0 +1,4 @@
1
+ SURETAX_VALIDATION_KEY=885aa2c6-1a61-4ec6-9aa6-296120572b5e
2
+ SURETAX_CLIENT_NUMBER=000000123
3
+ SURETAX_BASE_URL=https://testapi.taxrating.net
4
+ SURETAX_REQUEST_VERSION=02
@@ -8,7 +8,7 @@ AllCops:
8
8
  Exclude:
9
9
  - vendor/**/*
10
10
  - db/**/*
11
- TargetRubyVersion: 2.3
11
+ TargetRubyVersion: 2.5
12
12
 
13
13
  Rails:
14
14
  Enabled: true
@@ -1 +1 @@
1
- 2.4.1
1
+ 2.7.0
data/Gemfile CHANGED
@@ -1,4 +1,12 @@
1
1
  source "https://rubygems.org"
2
2
 
3
- # Specify your gem's dependencies in suretax.gemspec
4
3
  gemspec
4
+
5
+ group :development, :test do
6
+ gem "dotenv"
7
+ gem "pry-byebug"
8
+ gem "rspec", "~> 3.9.0"
9
+ gem "rspec-its"
10
+ gem "rspec_junit_formatter"
11
+ gem "webmock"
12
+ end
@@ -1,67 +1,74 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- suretax (1.0.1)
4
+ suretax (1.1.2)
5
5
  excon
6
6
  monetize
7
- money (~> 6.9.0)
7
+ money (~> 6.13)
8
8
 
9
9
  GEM
10
10
  remote: https://rubygems.org/
11
11
  specs:
12
- addressable (2.3.7)
13
- awesome_print (1.6.1)
14
- coderay (1.1.0)
15
- crack (0.4.2)
12
+ addressable (2.7.0)
13
+ public_suffix (>= 2.0.2, < 5.0)
14
+ byebug (11.1.3)
15
+ coderay (1.1.2)
16
+ concurrent-ruby (1.1.6)
17
+ crack (0.4.3)
16
18
  safe_yaml (~> 1.0.0)
17
- diff-lcs (1.2.5)
18
- dotenv (1.0.2)
19
- excon (0.56.0)
20
- i18n (0.8.4)
21
- method_source (0.8.2)
22
- monetize (1.7.0)
23
- money (~> 6.9)
24
- money (6.9.0)
25
- i18n (>= 0.6.4, < 0.9)
26
- pry (0.10.1)
27
- coderay (~> 1.1.0)
28
- method_source (~> 0.8.1)
29
- slop (~> 3.4)
30
- rake (10.4.2)
31
- rspec (3.0.0)
32
- rspec-core (~> 3.0.0)
33
- rspec-expectations (~> 3.0.0)
34
- rspec-mocks (~> 3.0.0)
35
- rspec-core (3.0.4)
36
- rspec-support (~> 3.0.0)
37
- rspec-expectations (3.0.4)
19
+ diff-lcs (1.3)
20
+ dotenv (2.7.5)
21
+ excon (0.73.0)
22
+ hashdiff (1.0.1)
23
+ i18n (1.8.2)
24
+ concurrent-ruby (~> 1.0)
25
+ method_source (1.0.0)
26
+ monetize (1.9.4)
27
+ money (~> 6.12)
28
+ money (6.13.7)
29
+ i18n (>= 0.6.4, <= 2)
30
+ pry (0.13.1)
31
+ coderay (~> 1.1)
32
+ method_source (~> 1.0)
33
+ pry-byebug (3.9.0)
34
+ byebug (~> 11.0)
35
+ pry (~> 0.13.0)
36
+ public_suffix (4.0.5)
37
+ rspec (3.9.0)
38
+ rspec-core (~> 3.9.0)
39
+ rspec-expectations (~> 3.9.0)
40
+ rspec-mocks (~> 3.9.0)
41
+ rspec-core (3.9.2)
42
+ rspec-support (~> 3.9.3)
43
+ rspec-expectations (3.9.2)
38
44
  diff-lcs (>= 1.2.0, < 2.0)
39
- rspec-support (~> 3.0.0)
40
- rspec-its (1.2.0)
45
+ rspec-support (~> 3.9.0)
46
+ rspec-its (1.3.0)
41
47
  rspec-core (>= 3.0.0)
42
48
  rspec-expectations (>= 3.0.0)
43
- rspec-mocks (3.0.4)
44
- rspec-support (~> 3.0.0)
45
- rspec-support (3.0.4)
46
- safe_yaml (1.0.4)
47
- slop (3.6.0)
48
- webmock (1.20.4)
49
+ rspec-mocks (3.9.1)
50
+ diff-lcs (>= 1.2.0, < 2.0)
51
+ rspec-support (~> 3.9.0)
52
+ rspec-support (3.9.3)
53
+ rspec_junit_formatter (0.4.1)
54
+ rspec-core (>= 2, < 4, != 2.12.0)
55
+ safe_yaml (1.0.5)
56
+ webmock (3.8.3)
49
57
  addressable (>= 2.3.6)
50
58
  crack (>= 0.3.2)
59
+ hashdiff (>= 0.4.0, < 2.0.0)
51
60
 
52
61
  PLATFORMS
53
62
  ruby
54
63
 
55
64
  DEPENDENCIES
56
- awesome_print
57
- bundler (~> 1.3)
58
65
  dotenv
59
- pry
60
- rake
61
- rspec (~> 3.0.0)
62
- rspec-its (~> 1.0)
66
+ pry-byebug
67
+ rspec (~> 3.9.0)
68
+ rspec-its
69
+ rspec_junit_formatter
63
70
  suretax!
64
71
  webmock
65
72
 
66
73
  BUNDLED WITH
67
- 1.15.1
74
+ 2.1.2
data/README.md CHANGED
@@ -1,6 +1,5 @@
1
1
  # Suretax
2
- [![Code Climate](https://codeclimate.com/github/bqsoft/suretax.png)](https://codeclimate.com/github/bqsoft/suretax)
3
-
2
+ [![Code Climate](https://codeclimate.com/github/hello-labs/suretax.png)](https://codeclimate.com/github/hello-labs/suretax)
4
3
 
5
4
  ## Synopsis
6
5
 
@@ -28,17 +27,14 @@ Suretax transactions. The validation_key, client_number, and
28
27
  base_url may be overridden by supplying the key when instantiating
29
28
  a Suretax::Api::Request object.
30
29
 
31
-
32
- If not supplied, the base_url will default to the Suretax test
30
+ If not supplied, the base_url will default to the Suretax test
33
31
  host (https://testapi.taxrating.net) and the request version
34
32
  and cancel version will default to the latest versions available
35
33
  (currently V03 and V01 respectively).
36
34
 
37
-
38
35
  You can peek inside the tests for more examples and to see what data
39
36
  methods are available.
40
37
 
41
-
42
38
  ## Development Environment
43
39
 
44
40
  Suretax uses [dotenv] to easily switch between development/test environments
@@ -1,15 +1,16 @@
1
1
  require "suretax/version"
2
-
3
2
  require "suretax/concerns"
4
-
5
3
  require "suretax/configuration"
6
4
  require "suretax/connection"
7
5
  require "suretax/response"
8
6
  require "suretax/constants"
9
7
  require "suretax/api"
10
-
11
8
  require "money"
12
9
 
10
+ Money.locale_backend = :currency
11
+ Money.default_currency = Money::Currency.new("USD")
12
+ Money.rounding_mode = BigDecimal::ROUND_HALF_EVEN
13
+
13
14
  module Suretax
14
15
  class << self
15
16
  attr_accessor :configuration
@@ -1,6 +1,7 @@
1
1
  module Suretax
2
2
  module Api
3
3
  class ValidationError < StandardError; end
4
+ class ConnectionError < StandardError; end
4
5
 
5
6
  class Request
6
7
  include Suretax::Concerns::Validatable
@@ -64,17 +64,17 @@ module Suretax
64
64
  def register_dollar_with_six_decimal_places
65
65
  Money::Currency.register(
66
66
  priority: 1,
67
- iso_code: "US6",
68
- iso_numeric: "840",
69
- name: "Dollar with six decimal places",
70
- symbol: "$",
71
- subunit: "Cent",
72
- subunit_to_unit: 1_000_000,
73
- symbol_first: true,
74
- html_entity: "$",
75
- decimal_mark: ".",
76
- thousands_separator: ",",
77
- symbolize_names: true
67
+ iso_code: "US6",
68
+ iso_numeric: "840",
69
+ name: "Dollar with six decimal places",
70
+ symbol: "$",
71
+ subunit: "Cent",
72
+ subunit_to_unit: 1_000_000,
73
+ symbol_first: true,
74
+ html_entity: "$",
75
+ decimal_mark: ".",
76
+ thousands_separator: ",",
77
+ symbolize_names: true
78
78
  )
79
79
  end
80
80
  end
@@ -4,4 +4,6 @@ module Suretax
4
4
  require "suretax/constants/sales_type_codes"
5
5
  require "suretax/constants/tax_situs_codes"
6
6
  require "suretax/constants/transaction_type_codes"
7
+ require "suretax/constants/tax_exemption_codes"
8
+ require "suretax/constants/tax_type_exemption_code_mapping"
7
9
  end
@@ -0,0 +1,28 @@
1
+ module Suretax
2
+ TAX_TYPE_EXEMPTION_CODES = [
3
+ { "exemption_code" => "01", "tax_types" => %w[000] },
4
+ { "exemption_code" => "24", "tax_types" => %w[035] },
5
+ { "exemption_code" => "35", "tax_types" => %w[060] },
6
+ { "exemption_code" => "09", "tax_types" => %w[000 035 060] },
7
+ { "exemption_code" => "11", "tax_types" => %w[106 133 233 333 433 533] },
8
+ { "exemption_code" => "13", "tax_types" => %w[224 324 424] },
9
+ { "exemption_code" => "14", "tax_types" => %w[106 133 233 333 433 533] },
10
+ { "exemption_code" => "20", "tax_types" => %w[108 208 308 408 508] },
11
+ { "exemption_code" => "21", "tax_types" => %w[128 228 328 428 528 132 232 332 432 532] },
12
+ { "exemption_code" => "22", "tax_types" => %w[126 226 326 426 526] },
13
+ { "exemption_code" => "23", "tax_types" => %w[126 226 326 426 526 128 228 328 428 528 132 232 332 432 532] },
14
+ { "exemption_code" => "31", "tax_types" => %w[101] },
15
+ { "exemption_code" => "25", "tax_types" => %w[000 035 101] },
16
+ { "exemption_code" => "26", "tax_types" => %w[127] },
17
+ { "exemption_code" => "30", "tax_types" => %w[127 227 327 427 137 237 337 437] },
18
+ { "exemption_code" => "36", "tax_types" => %w[051 151 251 351 451 551] },
19
+ { "exemption_code" => "37", "tax_types" => %w[042 142 242 342 442 542] },
20
+ { "exemption_code" => "38", "tax_types" => %w[041 141 241 341 441 541] },
21
+ { "exemption_code" => "39", "tax_types" => %w[040 140 240 340 440 540] },
22
+ { "exemption_code" => "41", "tax_types" => %w[016 116 216 316 416 516] },
23
+ { "exemption_code" => "42", "tax_types" => %w[117 127 417 427] },
24
+ { "exemption_code" => "43", "tax_types" => %w[022 122 222 322 422 522] },
25
+ { "exemption_code" => "45", "tax_types" => %w[123] },
26
+ { "exemption_code" => "46", "tax_types" => %w[236 336 436 536] }
27
+ ].freeze
28
+ end
@@ -27,6 +27,8 @@ module Suretax
27
27
  @status = map_response_code_to_http_status(api.status)
28
28
  log_response
29
29
  self
30
+ rescue JSON::ParserError => e
31
+ raise(Suretax::Api::ConnectionError, "Failed to parse response from SureTax: #{e.inspect}")
30
32
  end
31
33
 
32
34
  def invalid_request_response(sanitized_body)
@@ -1,3 +1,3 @@
1
1
  module Suretax
2
- VERSION = "1.0.2".freeze
2
+ VERSION = "1.1.2".freeze
3
3
  end
@@ -129,4 +129,12 @@ describe Suretax::Response do
129
129
  expect(client_response).to_not be_success
130
130
  end
131
131
  end
132
+
133
+ context "when posting fails with a html error" do
134
+ let(:response_body) { suretax_wrap_response("html error") }
135
+
136
+ it "should raise connection error" do
137
+ expect { client_response }.to raise_error(Suretax::Api::ConnectionError)
138
+ end
139
+ end
132
140
  end
@@ -1,11 +1,10 @@
1
- require "dotenv" # First line of spec_helper
2
- Dotenv.load # Second line of spec_helper
1
+ require "dotenv"
2
+ Dotenv.load(".env.test")
3
3
 
4
4
  require "pry"
5
5
  require "rspec"
6
6
  require "rspec/its"
7
7
  require "suretax"
8
- require "awesome_print"
9
8
  require "webmock/rspec"
10
9
 
11
10
  # Load support files
@@ -16,8 +15,8 @@ end
16
15
  RSpec.configure do |config|
17
16
  config.before(:each) do
18
17
  Suretax.configure do |c|
19
- c.validation_key = ENV["SURETAX_VALIDATION_KEY"]
20
- c.client_number = ENV["SURETAX_CLIENT_NUMBER"]
18
+ c.validation_key = ENV["SURETAX_VALIDATION_KEY"]
19
+ c.client_number = ENV["SURETAX_CLIENT_NUMBER"]
21
20
  end
22
21
  end
23
22
 
@@ -30,9 +29,6 @@ RSpec.configure do |config|
30
29
  end
31
30
  end
32
31
 
33
- # Silence deprecation warning from money/monetize libraries
34
- I18n.enforce_available_locales = false
35
-
36
32
  include RequestSpecHelper
37
33
  include CancellationSpecHelper
38
34
  include SuretaxSpecHelper
@@ -351,4 +351,22 @@ module RequestSpecHelper
351
351
  common_carrier: nil
352
352
  }
353
353
  end
354
+
355
+ def suretax_html_error
356
+ "<html xmlns='http://www.w3.org/1999/xhtml'>
357
+ <head>
358
+ <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/>
359
+ <title>502 - Web server received an invalid response while acting as a gateway or proxy server.</title>
360
+ </head>
361
+ <body>
362
+ <div id='header'><h1>Server Error</h1></div>
363
+ <div id='content'>
364
+ <div class='content-container'><fieldset>
365
+ <h2>502 - Web server received an invalid response while acting as a gateway or proxy server.</h2>
366
+ <h3>There is a problem with the page you are looking for, and it cannot be displayed. When the Web server (while acting as a gateway or proxy) contacted the upstream content server, it received an invalid response from the content server.</h3>
367
+ </fieldset></div>
368
+ </div>
369
+ </body>
370
+ </html>"
371
+ end
354
372
  end
@@ -20,15 +20,6 @@ Gem::Specification.new do |spec|
20
20
  spec.require_paths = ["lib"]
21
21
 
22
22
  spec.add_dependency "excon"
23
- spec.add_dependency "money", "~> 6.9.0"
23
+ spec.add_dependency "money", "~> 6.13"
24
24
  spec.add_dependency "monetize"
25
-
26
- spec.add_development_dependency "bundler", "~> 1.3"
27
- spec.add_development_dependency "rake"
28
- spec.add_development_dependency "rspec", "~> 3.0.0"
29
- spec.add_development_dependency "rspec-its", "~> 1.0"
30
- spec.add_development_dependency "dotenv"
31
- spec.add_development_dependency "awesome_print"
32
- spec.add_development_dependency "webmock"
33
- spec.add_development_dependency "pry"
34
25
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: suretax
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Damon Davison
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-12-27 00:00:00.000000000 Z
11
+ date: 2020-06-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: excon
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 6.9.0
33
+ version: '6.13'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 6.9.0
40
+ version: '6.13'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: monetize
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -52,118 +52,6 @@ dependencies:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
- - !ruby/object:Gem::Dependency
56
- name: bundler
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: '1.3'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: '1.3'
69
- - !ruby/object:Gem::Dependency
70
- name: rake
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: rspec
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: 3.0.0
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - "~>"
95
- - !ruby/object:Gem::Version
96
- version: 3.0.0
97
- - !ruby/object:Gem::Dependency
98
- name: rspec-its
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: '1.0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: '1.0'
111
- - !ruby/object:Gem::Dependency
112
- name: dotenv
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- version: '0'
125
- - !ruby/object:Gem::Dependency
126
- name: awesome_print
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - ">="
130
- - !ruby/object:Gem::Version
131
- version: '0'
132
- type: :development
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - ">="
137
- - !ruby/object:Gem::Version
138
- version: '0'
139
- - !ruby/object:Gem::Dependency
140
- name: webmock
141
- requirement: !ruby/object:Gem::Requirement
142
- requirements:
143
- - - ">="
144
- - !ruby/object:Gem::Version
145
- version: '0'
146
- type: :development
147
- prerelease: false
148
- version_requirements: !ruby/object:Gem::Requirement
149
- requirements:
150
- - - ">="
151
- - !ruby/object:Gem::Version
152
- version: '0'
153
- - !ruby/object:Gem::Dependency
154
- name: pry
155
- requirement: !ruby/object:Gem::Requirement
156
- requirements:
157
- - - ">="
158
- - !ruby/object:Gem::Version
159
- version: '0'
160
- type: :development
161
- prerelease: false
162
- version_requirements: !ruby/object:Gem::Requirement
163
- requirements:
164
- - - ">="
165
- - !ruby/object:Gem::Version
166
- version: '0'
167
55
  description: A wrapper library for the SureTax communications tax API
168
56
  email:
169
57
  - damon@allolex.net
@@ -171,7 +59,9 @@ executables: []
171
59
  extensions: []
172
60
  extra_rdoc_files: []
173
61
  files:
62
+ - ".circleci/config.yml"
174
63
  - ".env.example"
64
+ - ".env.test"
175
65
  - ".gitignore"
176
66
  - ".rspec"
177
67
  - ".rubocop.yml"
@@ -179,10 +69,8 @@ files:
179
69
  - Gemfile
180
70
  - Gemfile.lock
181
71
  - LICENSE.txt
182
- - NOTES.md
183
72
  - README.md
184
73
  - Rakefile
185
- - circle.yml
186
74
  - lib/suretax.rb
187
75
  - lib/suretax/api.rb
188
76
  - lib/suretax/api/cancel_request.rb
@@ -203,6 +91,7 @@ files:
203
91
  - lib/suretax/constants/sales_type_codes.rb
204
92
  - lib/suretax/constants/tax_exemption_codes.rb
205
93
  - lib/suretax/constants/tax_situs_codes.rb
94
+ - lib/suretax/constants/tax_type_exemption_code_mapping.rb
206
95
  - lib/suretax/constants/transaction_type_codes.rb
207
96
  - lib/suretax/response.rb
208
97
  - lib/suretax/version.rb
@@ -243,8 +132,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
243
132
  - !ruby/object:Gem::Version
244
133
  version: '0'
245
134
  requirements: []
246
- rubyforge_project:
247
- rubygems_version: 2.6.11
135
+ rubygems_version: 3.1.2
248
136
  signing_key:
249
137
  specification_version: 4
250
138
  summary: This gem will allow Ruby developers to easily integrate SureTax into their
data/NOTES.md DELETED
@@ -1,3 +0,0 @@
1
- # Suretax gem notes
2
-
3
- - Deal with post failures and parse errors in Response.
data/circle.yml DELETED
@@ -1,7 +0,0 @@
1
- machine:
2
- environment:
3
- SURETAX_BASE_URL: "https://testapi.taxrating.net"
4
- SURETAX_VALIDATION_KEY: "xxxxxxxxxx"
5
- SURETAX_CLIENT_NUMBER: "000000000"
6
- SURETAX_POST_PATH: "/Services/V01/SureTax.asmx/PostRequest"
7
- SURETAX_CANCEL_PATH: "/Services/V01/SureTax.asmx/CancelPostRequest"