strikeiron 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,52 @@
1
+ require 'helper'
2
+ require 'yaml'
3
+
4
+ class TestRequests < Test::Unit::TestCase
5
+
6
+ def test_get_sales_tax
7
+ from = Strikeiron::Address.new(
8
+ :street_address => 'One Microsoft Way',
9
+ :city => 'Redmond',
10
+ :state => 'WA',
11
+ :zip_code => '98052'
12
+ )
13
+
14
+ to = Strikeiron::Address.new(
15
+ :street_address => '902 Broadway',
16
+ :city => 'New York',
17
+ :state => 'NY',
18
+ :zip_code => '10010'
19
+ )
20
+
21
+ items = [ Strikeiron::TaxValue.new(:category => '01151605', :amount => 239.41), Strikeiron::TaxValue.new(:category => '01151605', :amount => 239.41) ]
22
+ VCR.use_cassette('sales tax') do
23
+ response = Strikeiron.sales_tax(
24
+ :from => from,
25
+ :to => to,
26
+ :tax_values => items
27
+ )
28
+
29
+ assert_equal Strikeiron::TaxResult, response.class
30
+ assert_equal 2, response.tax_values.size
31
+ assert_equal 42.5, response.total_tax
32
+ assert_not_equal 0, response.tax_values[0].jurisdictions.size
33
+ end
34
+ end
35
+
36
+ def test_tax_categories
37
+ VCR.use_cassette('tax categories') do
38
+ categories = Strikeiron.tax_categories
39
+ assert_not_equal [], categories
40
+ assert_equal true, categories[0].has_key?(:category)
41
+ assert_equal true, categories[0].has_key?(:category_id)
42
+ end
43
+ end
44
+
45
+ def test_remaining_hits
46
+ VCR.use_cassette('remaining hits') do
47
+ remaining_hits = Strikeiron.remaining_hits
48
+ assert_equal Fixnum, remaining_hits.class
49
+ end
50
+ end
51
+
52
+ end
metadata ADDED
@@ -0,0 +1,160 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: strikeiron
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Drew Tempelmeyer
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-05-04 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: savon
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: 0.9.6
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: 0.9.6
30
+ - !ruby/object:Gem::Dependency
31
+ name: rake
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ~>
36
+ - !ruby/object:Gem::Version
37
+ version: 0.9.2
38
+ type: :development
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: 0.9.2
46
+ - !ruby/object:Gem::Dependency
47
+ name: rdoc
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ~>
52
+ - !ruby/object:Gem::Version
53
+ version: '3.12'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: '3.12'
62
+ - !ruby/object:Gem::Dependency
63
+ name: vcr
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ~>
68
+ - !ruby/object:Gem::Version
69
+ version: 2.1.1
70
+ type: :development
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ~>
76
+ - !ruby/object:Gem::Version
77
+ version: 2.1.1
78
+ - !ruby/object:Gem::Dependency
79
+ name: webmock
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ~>
84
+ - !ruby/object:Gem::Version
85
+ version: 1.8.6
86
+ type: :development
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ~>
92
+ - !ruby/object:Gem::Version
93
+ version: 1.8.6
94
+ description: Ruby gem to handle tax calculation using the Strikeiron API.
95
+ email:
96
+ - drewtemp@gmail.com
97
+ executables: []
98
+ extensions: []
99
+ extra_rdoc_files: []
100
+ files:
101
+ - .gitignore
102
+ - .rbenv-version
103
+ - .travis.yml
104
+ - Gemfile
105
+ - LICENSE
106
+ - README.md
107
+ - Rakefile
108
+ - lib/strikeiron.rb
109
+ - lib/strikeiron/address.rb
110
+ - lib/strikeiron/configuration.rb
111
+ - lib/strikeiron/jurisdiction.rb
112
+ - lib/strikeiron/tax_result.rb
113
+ - lib/strikeiron/tax_value.rb
114
+ - lib/strikeiron/version.rb
115
+ - strikeiron.gemspec
116
+ - test/cassettes/client_actions.yml
117
+ - test/cassettes/remaining_hits.yml
118
+ - test/cassettes/sales_tax.yml
119
+ - test/cassettes/tax_categories.yml
120
+ - test/helper.rb
121
+ - test/test_client.rb
122
+ - test/test_requests.rb
123
+ homepage: https://github.com/drewtempelmeyer/strikeiron
124
+ licenses: []
125
+ post_install_message:
126
+ rdoc_options: []
127
+ require_paths:
128
+ - lib
129
+ required_ruby_version: !ruby/object:Gem::Requirement
130
+ none: false
131
+ requirements:
132
+ - - ! '>='
133
+ - !ruby/object:Gem::Version
134
+ version: '0'
135
+ segments:
136
+ - 0
137
+ hash: 1250023242823372906
138
+ required_rubygems_version: !ruby/object:Gem::Requirement
139
+ none: false
140
+ requirements:
141
+ - - ! '>='
142
+ - !ruby/object:Gem::Version
143
+ version: '0'
144
+ segments:
145
+ - 0
146
+ hash: 1250023242823372906
147
+ requirements: []
148
+ rubyforge_project:
149
+ rubygems_version: 1.8.23
150
+ signing_key:
151
+ specification_version: 3
152
+ summary: Ruby gem to handle tax calculation using the Strikeiron API.
153
+ test_files:
154
+ - test/cassettes/client_actions.yml
155
+ - test/cassettes/remaining_hits.yml
156
+ - test/cassettes/sales_tax.yml
157
+ - test/cassettes/tax_categories.yml
158
+ - test/helper.rb
159
+ - test/test_client.rb
160
+ - test/test_requests.rb