summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.travis.yml5
-rw-r--r--CHANGELOG.md17
-rw-r--r--README.md27
-rw-r--r--lib/super_good/solidus_taxjar.rb8
-rw-r--r--lib/super_good/solidus_taxjar/addresses.rb4
-rw-r--r--lib/super_good/solidus_taxjar/api.rb20
-rw-r--r--lib/super_good/solidus_taxjar/api_params.rb12
-rw-r--r--lib/super_good/solidus_taxjar/calculator_helper.rb8
-rw-r--r--lib/super_good/solidus_taxjar/discount_calculator.rb2
-rw-r--r--lib/super_good/solidus_taxjar/tax_calculator.rb14
-rw-r--r--lib/super_good/solidus_taxjar/tax_rate_calculator.rb8
-rw-r--r--lib/super_good/solidus_taxjar/version.rb4
-rw-r--r--spec/super_good/solidus_taxjar/addresses_spec.rb6
-rw-r--r--spec/super_good/solidus_taxjar/api_params_spec.rb8
-rw-r--r--spec/super_good/solidus_taxjar/api_spec.rb16
-rw-r--r--spec/super_good/solidus_taxjar/discount_calculator_spec.rb2
-rw-r--r--spec/super_good/solidus_taxjar/tax_calculator_spec.rb18
-rw-r--r--spec/super_good/solidus_taxjar/tax_rate_calculator_spec.rb18
-rw-r--r--spec/super_good/solidus_taxjar_spec.rb8
-rw-r--r--super_good-solidus_taxjar.gemspec2
20 files changed, 117 insertions, 90 deletions
diff --git a/.travis.yml b/.travis.yml
index c4ebfce..74624fa 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -3,12 +3,17 @@ dist: trusty
sudo: false
language: ruby
cache: bundler
+addons:
+ postgresql: "9.3"
jobs:
include:
- rvm: 2.5.8
env: SOLIDUS_BRANCH=v2.9 DB=postgresql RAILS_VERSION="~> 5.1.0"
- rvm: 2.6.6
env: SOLIDUS_BRANCH=v2.10 DB=postgresql RAILS_VERSION="~> 5.2.0"
+ - rvm: 2.6.6
+ env: SOLIDUS_BRANCH=v2.10 DB=postgresql RAILS_VERSION="~> 6.0.0"
+
before_install:
- gem update --system
- gem install bundler
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8e455dc..bbbb712 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,11 +1,26 @@
# Changelog
-## master
+## v0.18.0
- [#21](https://github.com/SuperGoodSoft/solidus_taxjar/pull/21) Migrated project to `solidus_dev_support`
- [#22](https://github.com/SuperGoodSoft/solidus_taxjar/pull/22) Added support for TaxJar address validation API through `SuperGood::SolidusTaxJar::Addresses` class
- [#34](https://github.com/SuperGoodSoft/solidus_taxjar/pull/34) Include API version in request headers
- [#38](https://github.com/SuperGoodSoft/solidus_taxjar/pull/38) Added a rails engine to support future solidus backend UI
+- [#43](https://github.com/SuperGoodSoft/solidus_taxjar/pull/43) Support zeitwerk loading
+
+**Breaking Changes**:
+
+- Module name `SolidusTaxJar` renamed to `SolidusTaxjar`
+- Class name `API` renamed to `Api`
+- Class name `APIParams` renamed to `ApiParams`
+
+### Upgrading from 0.17.X to 0.18.X
+
+If you're currently using version 0.17.X and want to upgrade to 0.18.X, follow these steps:
+
+- Rename any instances of the module `SolidusTaxJar` to `SolidusTaxjar`
+- Rename any instances of the class `API` to `Api`
+- Rename any instances of the class `APIParams` to `ApiParams`
## v0.17.1
diff --git a/README.md b/README.md
index 70ed420..6b01372 100644
--- a/README.md
+++ b/README.md
@@ -1,8 +1,8 @@
-# `SuperGood::SolidusTaxJar` [![Build Status](https://travis-ci.com/SuperGoodSoft/solidus_taxjar.svg?token=rc5QTgHvLLF7cpqkmyfd&branch=master)](https://travis-ci.com/SuperGoodSoft/solidus_taxjar)
+# `SuperGood::SolidusTaxjar` [![Build Status](https://travis-ci.com/SuperGoodSoft/solidus_taxjar.svg?token=rc5QTgHvLLF7cpqkmyfd&branch=master)](https://travis-ci.com/SuperGoodSoft/solidus_taxjar)
-`SuperGood::SolidusTaxJar` is a [Solidus](https://github.com/solidusio/solidus) extension that allows Solidus stores to use [TaxJar](https://www.taxjar.com/) for tax calculations.
+`SuperGood::SolidusTaxjar` is a [Solidus](https://github.com/solidusio/solidus) extension that allows Solidus stores to use [TaxJar](https://www.taxjar.com/) for tax calculations.
-This is not a fork of [spree_taxjar](https://github.com/vinsol-spree-contrib/spree_taxjar), like [solidus_taxjar](https://github.com/boomerdigital/solidus_taxjar). Instead of using a custom calculator, `SuperGood::SolidusTaxJar` uses the new configurable tax system [by @adammathys](https://github.com/solidusio/solidus/pull/1892) introduced in Solidus v2.4. This maps better to how the TaxJar API itself works.
+This is not a fork of [spree_taxjar](https://github.com/vinsol-spree-contrib/spree_taxjar), like [solidus_taxjar](https://github.com/boomerdigital/solidus_taxjar). Instead of using a custom calculator, `SuperGood::SolidusTaxjar` uses the new configurable tax system [by @adammathys](https://github.com/solidusio/solidus/pull/1892) introduced in Solidus v2.4. This maps better to how the TaxJar API itself works.
## Installation
@@ -16,29 +16,36 @@ This is not a fork of [spree_taxjar](https://github.com/vinsol-spree-contrib/spr
$ bundle
-2. Next, configure Solidus to use this gem:
+2. Install and run the necessary migrations:
+
+ ```shell
+ bundle exec rails g super_good:solidus_taxjar:install
+ bundle exec rake db:migrate
+ ```
+
+3. Next, configure Solidus to use this gem:
```ruby
# Put this in config/initializers/solidus.rb
Spree.config do |config|
- config.tax_calculator_class = SuperGood::SolidusTaxJar::TaxCalculator
+ config.tax_calculator_class = SuperGood::SolidusTaxjar::TaxCalculator
end
```
-3. Also, configure your error handling:
+4. Also, configure your error handling:
```ruby
# Put this in config/initializers/taxjar.rb
- SuperGood::SolidusTaxJar.exception_handler = ->(e) {
+ SuperGood::SolidusTaxjar.exception_handler = ->(e) {
# Report exceptions in here. For example, if you were using the Sentry's
# raven-ruby gem to report errors, you might do this:
Raven.capture_exception(e)
}
```
-4. Finally, make sure that the `TAXJAR_API_KEY` environment variable is set to a your TaxJar API key and make sure that you have a `Spree::TaxRate` with the name "Sales Tax". This will be used as the source for the tax adjustments that Solidus creates.
+5. Finally, make sure that the `TAXJAR_API_KEY` environment variable is set to a your TaxJar API key and make sure that you have a `Spree::TaxRate` with the name "Sales Tax". This will be used as the source for the tax adjustments that Solidus creates.
## Project Status
@@ -57,11 +64,11 @@ The extension provides currently two high level `calculator` classes that wrap t
### TaxCalculator
-`SuperGood::SolidusTaxJar::TaxCalculator` allows calculating the full tax breakdown for a given `Spree::Order`. The breakdown includes separate line items taxes and shipment taxes.
+`SuperGood::SolidusTaxjar::TaxCalculator` allows calculating the full tax breakdown for a given `Spree::Order`. The breakdown includes separate line items taxes and shipment taxes.
### TaxRateCalculator
-`SuperGood::SolidusTaxJar::TaxRateCalculator` allows calculating the tax rate for a given `Spree::Address`. It relies on the same low-level Ruby TaxJar API endpoint of the tax calculator in order to provide the most coherent and reliable results. TaxJar support recommends using this endpoint for live calculations.
+`SuperGood::SolidusTaxjar::TaxRateCalculator` allows calculating the tax rate for a given `Spree::Address`. It relies on the same low-level Ruby TaxJar API endpoint of the tax calculator in order to provide the most coherent and reliable results. TaxJar support recommends using this endpoint for live calculations.
## Development
diff --git a/lib/super_good/solidus_taxjar.rb b/lib/super_good/solidus_taxjar.rb
index 7bdeb03..36b5d85 100644
--- a/lib/super_good/solidus_taxjar.rb
+++ b/lib/super_good/solidus_taxjar.rb
@@ -12,7 +12,7 @@ require "super_good/solidus_taxjar/discount_calculator"
require "super_good/solidus_taxjar/addresses"
module SuperGood
- module SolidusTaxJar
+ module SolidusTaxjar
class << self
attr_accessor :cache_duration
attr_accessor :cache_key
@@ -28,17 +28,17 @@ module SuperGood
attr_accessor :test_mode
def api
- ::SuperGood::SolidusTaxJar::API.new
+ ::SuperGood::SolidusTaxjar::Api.new
end
end
self.cache_duration = 3.hours
self.cache_key = ->(record) {
record_type = record.class.name.demodulize.underscore
- APIParams.send("#{record_type}_params", record).to_json
+ ApiParams.send("#{record_type}_params", record).to_json
}
self.custom_order_params = ->(order) { {} }
- self.discount_calculator = ::SuperGood::SolidusTaxJar::DiscountCalculator
+ self.discount_calculator = ::SuperGood::SolidusTaxjar::DiscountCalculator
self.exception_handler = ->(e) {
Rails.logger.error "An error occurred while fetching TaxJar tax rates - #{e}: #{e.message}"
}
diff --git a/lib/super_good/solidus_taxjar/addresses.rb b/lib/super_good/solidus_taxjar/addresses.rb
index de91af9..7fdf852 100644
--- a/lib/super_good/solidus_taxjar/addresses.rb
+++ b/lib/super_good/solidus_taxjar/addresses.rb
@@ -1,5 +1,5 @@
module SuperGood
- module SolidusTaxJar
+ module SolidusTaxjar
class Addresses
class << self
def normalize(spree_address)
@@ -11,7 +11,7 @@ module SuperGood
end
end
- def initialize(api: ::SuperGood::SolidusTaxJar.api)
+ def initialize(api: ::SuperGood::SolidusTaxjar.api)
@api = api
end
diff --git a/lib/super_good/solidus_taxjar/api.rb b/lib/super_good/solidus_taxjar/api.rb
index 5c6ab3e..ca6ff6c 100644
--- a/lib/super_good/solidus_taxjar/api.rb
+++ b/lib/super_good/solidus_taxjar/api.rb
@@ -1,6 +1,6 @@
module SuperGood
- module SolidusTaxJar
- class API
+ module SolidusTaxjar
+ class Api
def self.default_taxjar_client
::Taxjar::Client.new(
api_key: ENV.fetch("TAXJAR_API_KEY"),
@@ -16,8 +16,8 @@ module SuperGood
end
def tax_for(order)
- taxjar_client.tax_for_order(APIParams.order_params(order)).tap do |taxes|
- next unless SuperGood::SolidusTaxJar.logging_enabled
+ taxjar_client.tax_for_order(ApiParams.order_params(order)).tap do |taxes|
+ next unless SuperGood::SolidusTaxjar.logging_enabled
Rails.logger.info(
"TaxJar response for #{order.number}: #{taxes.to_h.inspect}"
@@ -26,19 +26,19 @@ module SuperGood
end
def tax_rate_for(address)
- taxjar_client.tax_for_order(APIParams.tax_rate_address_params(address)).rate
+ taxjar_client.tax_for_order(ApiParams.tax_rate_address_params(address)).rate
end
def tax_rates_for(address)
- taxjar_client.rates_for_location(*APIParams.address_params(address))
+ taxjar_client.rates_for_location(*ApiParams.address_params(address))
end
def create_transaction_for(order)
- taxjar_client.create_order APIParams.transaction_params(order)
+ taxjar_client.create_order ApiParams.transaction_params(order)
end
def update_transaction_for(order)
- taxjar_client.update_order APIParams.transaction_params(order)
+ taxjar_client.update_order ApiParams.transaction_params(order)
end
def delete_transaction_for(order)
@@ -46,11 +46,11 @@ module SuperGood
end
def create_refund_for(reimbursement)
- taxjar_client.create_refund APIParams.refund_params(reimbursement)
+ taxjar_client.create_refund ApiParams.refund_params(reimbursement)
end
def validate_spree_address(spree_address)
- taxjar_client.validate_address APIParams.validate_address_params(spree_address)
+ taxjar_client.validate_address ApiParams.validate_address_params(spree_address)
end
private
diff --git a/lib/super_good/solidus_taxjar/api_params.rb b/lib/super_good/solidus_taxjar/api_params.rb
index a7d1a5b..ebf034d 100644
--- a/lib/super_good/solidus_taxjar/api_params.rb
+++ b/lib/super_good/solidus_taxjar/api_params.rb
@@ -1,6 +1,6 @@
module SuperGood
- module SolidusTaxJar
- module APIParams
+ module SolidusTaxjar
+ module ApiParams
class << self
def order_params(order)
{}
@@ -8,9 +8,9 @@ module SuperGood
.merge(order_address_params(order.tax_address))
.merge(line_items_params(order.line_items))
.merge(shipping: shipping(order))
- .merge(SuperGood::SolidusTaxJar.custom_order_params.call(order))
+ .merge(SuperGood::SolidusTaxjar.custom_order_params.call(order))
.tap do |params|
- next unless SuperGood::SolidusTaxJar.logging_enabled
+ next unless SuperGood::SolidusTaxjar.logging_enabled
Rails.logger.info(
"TaxJar params for #{order.number}: #{params.inspect}"
@@ -133,11 +133,11 @@ module SuperGood
end
def discount(line_item)
- ::SuperGood::SolidusTaxJar.discount_calculator.new(line_item).discount
+ ::SuperGood::SolidusTaxjar.discount_calculator.new(line_item).discount
end
def shipping(order)
- SuperGood::SolidusTaxJar.shipping_calculator.call(order)
+ SuperGood::SolidusTaxjar.shipping_calculator.call(order)
end
def sales_tax(order)
diff --git a/lib/super_good/solidus_taxjar/calculator_helper.rb b/lib/super_good/solidus_taxjar/calculator_helper.rb
index c4803a4..edf0754 100644
--- a/lib/super_good/solidus_taxjar/calculator_helper.rb
+++ b/lib/super_good/solidus_taxjar/calculator_helper.rb
@@ -1,5 +1,5 @@
module SuperGood
- module SolidusTaxJar
+ module SolidusTaxjar
module CalculatorHelper
extend ActiveSupport::Concern
@@ -16,14 +16,14 @@ module SuperGood
end
def taxable_address?(address)
- SuperGood::SolidusTaxJar.taxable_address_check.call(address)
+ SuperGood::SolidusTaxjar.taxable_address_check.call(address)
end
def cache
if !Rails.env.test?
Rails.cache.fetch(
cache_key,
- expires_in: SuperGood::SolidusTaxJar.cache_duration
+ expires_in: SuperGood::SolidusTaxjar.cache_duration
) { yield }
else
yield
@@ -31,7 +31,7 @@ module SuperGood
end
def exception_handler
- SuperGood::SolidusTaxJar.exception_handler
+ SuperGood::SolidusTaxjar.exception_handler
end
end
end
diff --git a/lib/super_good/solidus_taxjar/discount_calculator.rb b/lib/super_good/solidus_taxjar/discount_calculator.rb
index 747a9d0..e5ae91c 100644
--- a/lib/super_good/solidus_taxjar/discount_calculator.rb
+++ b/lib/super_good/solidus_taxjar/discount_calculator.rb
@@ -1,5 +1,5 @@
module SuperGood
- module SolidusTaxJar
+ module SolidusTaxjar
class DiscountCalculator
def initialize(line_item)
@line_item = line_item
diff --git a/lib/super_good/solidus_taxjar/tax_calculator.rb b/lib/super_good/solidus_taxjar/tax_calculator.rb
index 88eee2a..74e6f9b 100644
--- a/lib/super_good/solidus_taxjar/tax_calculator.rb
+++ b/lib/super_good/solidus_taxjar/tax_calculator.rb
@@ -1,15 +1,15 @@
module SuperGood
- module SolidusTaxJar
+ module SolidusTaxjar
class TaxCalculator
include CalculatorHelper
- def initialize(order, api: SuperGood::SolidusTaxJar.api)
+ def initialize(order, api: SuperGood::SolidusTaxjar.api)
@order = order
@api = api
end
def calculate
- return no_tax if SuperGood::SolidusTaxJar.test_mode
+ return no_tax if SuperGood::SolidusTaxjar.test_mode
return no_tax if incomplete_address?(order.tax_address) || order.line_items.none?
return no_tax unless taxable_order? order
return no_tax unless taxable_address? order.tax_address
@@ -114,22 +114,22 @@ module SuperGood
end
def cache_key
- SuperGood::SolidusTaxJar.cache_key.call(order)
+ SuperGood::SolidusTaxjar.cache_key.call(order)
end
def taxable_order?(order)
- SuperGood::SolidusTaxJar.taxable_order_check.call(order)
+ SuperGood::SolidusTaxjar.taxable_order_check.call(order)
end
def shipping_tax_label(shipment, shipping_tax)
- SuperGood::SolidusTaxJar.shipping_tax_label_maker.call(
+ SuperGood::SolidusTaxjar.shipping_tax_label_maker.call(
shipment,
shipping_tax
)
end
def line_item_tax_label(taxjar_line_item, spree_line_item)
- SuperGood::SolidusTaxJar.line_item_tax_label_maker.call(taxjar_line_item, spree_line_item)
+ SuperGood::SolidusTaxjar.line_item_tax_label_maker.call(taxjar_line_item, spree_line_item)
end
end
end
diff --git a/lib/super_good/solidus_taxjar/tax_rate_calculator.rb b/lib/super_good/solidus_taxjar/tax_rate_calculator.rb
index f9c996c..0096afc 100644
--- a/lib/super_good/solidus_taxjar/tax_rate_calculator.rb
+++ b/lib/super_good/solidus_taxjar/tax_rate_calculator.rb
@@ -1,14 +1,14 @@
module SuperGood
- module SolidusTaxJar
+ module SolidusTaxjar
class TaxRateCalculator
include CalculatorHelper
- def initialize(address, api: SuperGood::SolidusTaxJar.api)
+ def initialize(address, api: SuperGood::SolidusTaxjar.api)
@address = address
@api = api
end
def calculate
- return no_rate if SuperGood::SolidusTaxJar.test_mode
+ return no_rate if SuperGood::SolidusTaxjar.test_mode
return no_rate if incomplete_address?(address)
return no_rate unless taxable_address?(address)
cache do
@@ -28,7 +28,7 @@ module SuperGood
end
def cache_key
- SuperGood::SolidusTaxJar.cache_key.call(address)
+ SuperGood::SolidusTaxjar.cache_key.call(address)
end
end
end
diff --git a/lib/super_good/solidus_taxjar/version.rb b/lib/super_good/solidus_taxjar/version.rb
index 6d001e4..ac6b87b 100644
--- a/lib/super_good/solidus_taxjar/version.rb
+++ b/lib/super_good/solidus_taxjar/version.rb
@@ -1,5 +1,5 @@
module SuperGood
- module SolidusTaxJar
- VERSION = "0.17.1"
+ module SolidusTaxjar
+ VERSION = "0.18.0"
end
end
diff --git a/spec/super_good/solidus_taxjar/addresses_spec.rb b/spec/super_good/solidus_taxjar/addresses_spec.rb
index 9a149b8..4995b12 100644
--- a/spec/super_good/solidus_taxjar/addresses_spec.rb
+++ b/spec/super_good/solidus_taxjar/addresses_spec.rb
@@ -1,6 +1,6 @@
require "spec_helper"
-RSpec.describe SuperGood::SolidusTaxJar::Addresses do
+RSpec.describe SuperGood::SolidusTaxjar::Addresses do
describe "#normalize" do
subject { described_class.new(api: dummy_api).normalize(spree_address) }
@@ -38,7 +38,7 @@ RSpec.describe SuperGood::SolidusTaxJar::Addresses do
}
let(:dummy_api) {
- instance_double ::SuperGood::SolidusTaxJar::API
+ instance_double ::SuperGood::SolidusTaxjar::Api
}
context "when there are no possibilities for the address" do
@@ -171,7 +171,7 @@ RSpec.describe SuperGood::SolidusTaxJar::Addresses do
}
let(:dummy_api) {
- instance_double ::SuperGood::SolidusTaxJar::API
+ instance_double ::SuperGood::SolidusTaxjar::Api
}
context "when there are no possibilities for the address" do
diff --git a/spec/super_good/solidus_taxjar/api_params_spec.rb b/spec/super_good/solidus_taxjar/api_params_spec.rb
index c4e3681..0fc54f6 100644
--- a/spec/super_good/solidus_taxjar/api_params_spec.rb
+++ b/spec/super_good/solidus_taxjar/api_params_spec.rb
@@ -1,6 +1,6 @@
require "spec_helper"
-RSpec.describe SuperGood::SolidusTaxJar::APIParams do
+RSpec.describe SuperGood::SolidusTaxjar::ApiParams do
let(:order) do
Spree::Order.create!(
additional_tax_total: BigDecimal("9.87"),
@@ -143,8 +143,8 @@ RSpec.describe SuperGood::SolidusTaxJar::APIParams do
context "when custom params are used" do
around do |example|
- default = SuperGood::SolidusTaxJar.custom_order_params
- SuperGood::SolidusTaxJar.custom_order_params = ->(order) {
+ default = SuperGood::SolidusTaxjar.custom_order_params
+ SuperGood::SolidusTaxjar.custom_order_params = ->(order) {
{
nexus_addresses: [
{
@@ -158,7 +158,7 @@ RSpec.describe SuperGood::SolidusTaxJar::APIParams do
}
}
example.run
- SuperGood::SolidusTaxJar.custom_order_params = default
+ SuperGood::SolidusTaxjar.custom_order_params = default
end
it "returns params for fetching the tax for the order" do
diff --git a/spec/super_good/solidus_taxjar/api_spec.rb b/spec/super_good/solidus_taxjar/api_spec.rb
index ed97df0..a1282a7 100644
--- a/spec/super_good/solidus_taxjar/api_spec.rb
+++ b/spec/super_good/solidus_taxjar/api_spec.rb
@@ -1,6 +1,6 @@
require "spec_helper"
-RSpec.describe SuperGood::SolidusTaxJar::API do
+RSpec.describe SuperGood::SolidusTaxjar::Api do
describe ".new" do
subject { described_class.new }
@@ -27,7 +27,7 @@ RSpec.describe SuperGood::SolidusTaxJar::API do
let(:order) { Spree::Order.new }
before do
- allow(SuperGood::SolidusTaxJar::APIParams)
+ allow(SuperGood::SolidusTaxjar::ApiParams)
.to receive(:order_params)
.with(order)
.and_return({order: "params"})
@@ -51,7 +51,7 @@ RSpec.describe SuperGood::SolidusTaxJar::API do
let(:response) { double(rate: tax_rate) }
before do
- allow(SuperGood::SolidusTaxJar::APIParams)
+ allow(SuperGood::SolidusTaxjar::ApiParams)
.to receive(:tax_rate_address_params)
.with(address)
.and_return({address: "params"})
@@ -73,7 +73,7 @@ RSpec.describe SuperGood::SolidusTaxJar::API do
let(:address) { Spree::Address.new }
before do
- allow(SuperGood::SolidusTaxJar::APIParams)
+ allow(SuperGood::SolidusTaxjar::ApiParams)
.to receive(:address_params)
.with(address)
.and_return(["zipcode", {address: "params"}])
@@ -95,7 +95,7 @@ RSpec.describe SuperGood::SolidusTaxJar::API do
let(:order) { Spree::Order.new }
before do
- allow(SuperGood::SolidusTaxJar::APIParams)
+ allow(SuperGood::SolidusTaxjar::ApiParams)
.to receive(:transaction_params)
.with(order)
.and_return({transaction: "params"})
@@ -117,7 +117,7 @@ RSpec.describe SuperGood::SolidusTaxJar::API do
let(:order) { Spree::Order.new }
before do
- allow(SuperGood::SolidusTaxJar::APIParams)
+ allow(SuperGood::SolidusTaxjar::ApiParams)
.to receive(:transaction_params)
.with(order)
.and_return({transaction: "params"})
@@ -156,7 +156,7 @@ RSpec.describe SuperGood::SolidusTaxJar::API do
let(:reimbursement) { Spree::Reimbursement.new }
before do
- allow(SuperGood::SolidusTaxJar::APIParams)
+ allow(SuperGood::SolidusTaxjar::ApiParams)
.to receive(:refund_params)
.with(reimbursement)
.and_return({refund: "params"})
@@ -178,7 +178,7 @@ RSpec.describe SuperGood::SolidusTaxJar::API do
let(:spree_address) { build :address }
before do
- allow(SuperGood::SolidusTaxJar::APIParams)
+ allow(SuperGood::SolidusTaxjar::ApiParams)
.to receive(:validate_address_params)
.with(spree_address)
.and_return({address: "params"})
diff --git a/spec/super_good/solidus_taxjar/discount_calculator_spec.rb b/spec/super_good/solidus_taxjar/discount_calculator_spec.rb
index 65f3bc4..d628c4f 100644
--- a/spec/super_good/solidus_taxjar/discount_calculator_spec.rb
+++ b/spec/super_good/solidus_taxjar/discount_calculator_spec.rb
@@ -1,6 +1,6 @@
require "spec_helper"
-RSpec.describe SuperGood::SolidusTaxJar::DiscountCalculator do
+RSpec.describe SuperGood::SolidusTaxjar::DiscountCalculator do
describe "#discount" do
subject { calculator.discount }
diff --git a/spec/super_good/solidus_taxjar/tax_calculator_spec.rb b/spec/super_good/solidus_taxjar/tax_calculator_spec.rb
index c88be44..3386022 100644
--- a/spec/super_good/solidus_taxjar/tax_calculator_spec.rb
+++ b/spec/super_good/solidus_taxjar/tax_calculator_spec.rb
@@ -1,13 +1,13 @@
require "spec_helper"
-RSpec.describe ::SuperGood::SolidusTaxJar::TaxCalculator do
+RSpec.describe ::SuperGood::SolidusTaxjar::TaxCalculator do
describe "#calculate" do
subject { calculator.calculate }
let(:calculator) { described_class.new(order, api: dummy_api) }
let(:dummy_api) do
- instance_double ::SuperGood::SolidusTaxJar::API
+ instance_double ::SuperGood::SolidusTaxjar::Api
end
let(:order) do
@@ -141,7 +141,7 @@ RSpec.describe ::SuperGood::SolidusTaxJar::TaxCalculator do
end
it "calls the configured error handler" do
- expect(SuperGood::SolidusTaxJar.exception_handler).to receive(:call) do |e|
+ expect(SuperGood::SolidusTaxjar.exception_handler).to receive(:call) do |e|
expect(e).to be_a StandardError
expect(e.message).to eq "A bad thing happened."
end
@@ -217,7 +217,7 @@ RSpec.describe ::SuperGood::SolidusTaxJar::TaxCalculator do
context "with custom line item tax labels" do
before do
- allow(SuperGood::SolidusTaxJar.line_item_tax_label_maker)
+ allow(SuperGood::SolidusTaxjar.line_item_tax_label_maker)
.to receive(:call)
.with(taxjar_line_item, line_items.first)
.and_return("Space Tax")
@@ -231,7 +231,7 @@ RSpec.describe ::SuperGood::SolidusTaxJar::TaxCalculator do
context "but the taxable address check returns false" do
before do
- allow(SuperGood::SolidusTaxJar.taxable_address_check)
+ allow(SuperGood::SolidusTaxjar.taxable_address_check)
.to receive(:call).with(address)
.and_return(false)
end
@@ -245,7 +245,7 @@ RSpec.describe ::SuperGood::SolidusTaxJar::TaxCalculator do
context "but the taxable order check returns false" do
before do
- allow(SuperGood::SolidusTaxJar.taxable_order_check)
+ allow(SuperGood::SolidusTaxjar.taxable_order_check)
.to receive(:call).with(order)
.and_return(false)
end
@@ -289,7 +289,7 @@ RSpec.describe ::SuperGood::SolidusTaxJar::TaxCalculator do
context "with custom shipping tax labels" do
before do
- allow(SuperGood::SolidusTaxJar.shipping_tax_label_maker).to receive(:call)
+ allow(SuperGood::SolidusTaxjar.shipping_tax_label_maker).to receive(:call)
.and_return("Magic Tax", "Spicy Tax", "Vegetable Tax")
end
@@ -307,8 +307,8 @@ RSpec.describe ::SuperGood::SolidusTaxJar::TaxCalculator do
end
context "when test_mode is set" do
- before { SuperGood::SolidusTaxJar.test_mode = true }
- after { SuperGood::SolidusTaxJar.test_mode = false }
+ before { SuperGood::SolidusTaxjar.test_mode = true }
+ after { SuperGood::SolidusTaxjar.test_mode = false }
it "returns no taxes" do
expect(subject.order_id).to eq order.id
diff --git a/spec/super_good/solidus_taxjar/tax_rate_calculator_spec.rb b/spec/super_good/solidus_taxjar/tax_rate_calculator_spec.rb
index 057d58d..1757d19 100644
--- a/spec/super_good/solidus_taxjar/tax_rate_calculator_spec.rb
+++ b/spec/super_good/solidus_taxjar/tax_rate_calculator_spec.rb
@@ -1,13 +1,13 @@
require "spec_helper"
-RSpec.describe ::SuperGood::SolidusTaxJar::TaxRateCalculator do
+RSpec.describe ::SuperGood::SolidusTaxjar::TaxRateCalculator do
describe "#calculate" do
subject { calculator.calculate }
let(:calculator) { described_class.new(address, api: dummy_api) }
let(:dummy_api) do
- instance_double ::SuperGood::SolidusTaxJar::API
+ instance_double ::SuperGood::SolidusTaxjar::Api
end
let(:dummy_tax_rate) { BigDecimal(0) }
@@ -43,10 +43,10 @@ RSpec.describe ::SuperGood::SolidusTaxJar::TaxRateCalculator do
context "when we're not rescuing from errors" do
around do |example|
- handler = SuperGood::SolidusTaxJar.exception_handler
- SuperGood::SolidusTaxJar.exception_handler = ->(error) { raise error }
+ handler = SuperGood::SolidusTaxjar.exception_handler
+ SuperGood::SolidusTaxjar.exception_handler = ->(error) { raise error }
example.run
- SuperGood::SolidusTaxJar.exception_handler = handler
+ SuperGood::SolidusTaxjar.exception_handler = handler
end
it_behaves_like "returns the dummy tax rate"
@@ -64,7 +64,7 @@ RSpec.describe ::SuperGood::SolidusTaxJar::TaxRateCalculator do
context "when the address is not taxable" do
before do
- allow(SuperGood::SolidusTaxJar.taxable_address_check)
+ allow(SuperGood::SolidusTaxjar.taxable_address_check)
.to receive(:call).with(address)
.and_return(false)
end
@@ -93,7 +93,7 @@ RSpec.describe ::SuperGood::SolidusTaxJar::TaxRateCalculator do
end
it "calls the configured error handler" do
- expect(SuperGood::SolidusTaxJar.exception_handler).to receive(:call) do |e|
+ expect(SuperGood::SolidusTaxjar.exception_handler).to receive(:call) do |e|
expect(e).to be_a StandardError
expect(e.message).to eq "A bad thing happened."
end
@@ -107,8 +107,8 @@ RSpec.describe ::SuperGood::SolidusTaxJar::TaxRateCalculator do
context "when test_mode is set" do
let(:address) { complete_address }
- before { SuperGood::SolidusTaxJar.test_mode = true }
- after { SuperGood::SolidusTaxJar.test_mode = false }
+ before { SuperGood::SolidusTaxjar.test_mode = true }
+ after { SuperGood::SolidusTaxjar.test_mode = false }
it_behaves_like "returns the dummy tax rate"
end
diff --git a/spec/super_good/solidus_taxjar_spec.rb b/spec/super_good/solidus_taxjar_spec.rb
index 30a2d01..6236b2f 100644
--- a/spec/super_good/solidus_taxjar_spec.rb
+++ b/spec/super_good/solidus_taxjar_spec.rb
@@ -1,8 +1,8 @@
require "spec_helper"
-RSpec.describe SuperGood::SolidusTaxJar do
+RSpec.describe SuperGood::SolidusTaxjar do
it "has a version number" do
- expect(SuperGood::SolidusTaxJar::VERSION).not_to be nil
+ expect(SuperGood::SolidusTaxjar::VERSION).not_to be nil
end
describe "configuration" do
@@ -12,7 +12,7 @@ RSpec.describe SuperGood::SolidusTaxJar do
let(:order) { Spree::Order.new }
it "returns the API params converted to JSON" do
- allow(SuperGood::SolidusTaxJar::APIParams)
+ allow(SuperGood::SolidusTaxjar::ApiParams)
.to receive(:order_params)
.with(order)
.and_return({some: "hash", with: "stuff", in: "it"})
@@ -23,7 +23,7 @@ RSpec.describe SuperGood::SolidusTaxJar do
describe ".discount_calculator" do
subject { described_class.discount_calculator }
- it { is_expected.to eq SuperGood::SolidusTaxJar::DiscountCalculator }
+ it { is_expected.to eq SuperGood::SolidusTaxjar::DiscountCalculator }
end
describe ".test_mode" do
diff --git a/super_good-solidus_taxjar.gemspec b/super_good-solidus_taxjar.gemspec
index d54cd91..51fd3e8 100644
--- a/super_good-solidus_taxjar.gemspec
+++ b/super_good-solidus_taxjar.gemspec
@@ -4,7 +4,7 @@ require "super_good/solidus_taxjar/version"
Gem::Specification.new do |spec|
spec.name = "super_good-solidus_taxjar"
- spec.version = SuperGood::SolidusTaxJar::VERSION
+ spec.version = SuperGood::SolidusTaxjar::VERSION
spec.authors = ["Jared Norman"]
spec.email = ["jared@super.gd"]