Matt-Yorkley
b427fd6876
Add data migration for enterprise fee tax amounts
2021-06-06 20:16:03 +01:00
Matt-Yorkley
a31487a86d
Clear any legacy taxes when applying tax to an order
...
#create_tax_charge! adds tax (adjustments) to all taxable items on an order. If an order order has legacy taxes (lump-sum tax adjustments on the order object), we remove them here before re-applying taxes (using the new setup).
2021-06-06 20:16:03 +01:00
Matt-Yorkley
84a40e6ae0
Improve Order#enterpise_fee_tax
2021-06-06 20:16:03 +01:00
Matt-Yorkley
19f32b7825
Update checkout tax display test setup
2021-06-06 20:16:03 +01:00
Matt-Yorkley
93e422ec59
Update order fee tax test setup
2021-06-06 20:16:03 +01:00
Matt-Yorkley
6e9ae0b0db
Update tax totals calculation in Order::Updater
...
Line items, shipments, and fees now all have taxes recorded in a uniform way, so we can drop more complexity here (and the number of queries).
2021-06-06 20:16:03 +01:00
Matt-Yorkley
a1438bdb3d
Update enterprise fee tax adjustment specs
2021-06-06 20:16:03 +01:00
Matt-Yorkley
510f74f654
Update OrderTaxAdjustmentsFetcher
...
Taxes on Enterprise Fees are now recorded in proper tax adjustments, so they don't need special treatment.
2021-06-06 20:16:03 +01:00
Matt-Yorkley
52452f7939
Update default tax calculator
...
Line items, shipments and fees can now all be calculated in the same way when applying tax.
2021-06-06 20:16:03 +01:00
Matt-Yorkley
b3240f859a
Add tax category id to adjustments
2021-06-06 20:16:03 +01:00
Matt-Yorkley
2de442f44d
Move taxing of enterprise fees to TaxRate
2021-06-06 20:16:03 +01:00
Matt-Yorkley
c2211c501d
Improve test setup in Xero Invoices spec
2021-06-06 20:16:03 +01:00
Matt-Yorkley
6c340f8ed4
Update SalesTax test setup
2021-06-06 20:16:03 +01:00
Matt-Yorkley
a22cc96ea5
Simplify DefaultTax calculator
...
This logic is handled in TaxRate and doesn't need to be duplicated here.
2021-06-06 20:16:03 +01:00
Matt-Yorkley
8c9733d8da
Remove included tax check from CalculatedAdjustments
...
This is handled in TaxRate now.
2021-06-06 20:16:03 +01:00
Matt-Yorkley
ff9ad96b74
Update TaxRate specs
2021-06-06 20:16:03 +01:00
Matt-Yorkley
8479d4ff7c
Update outdated calls to TaxRate#adjust in specs
2021-06-06 20:16:03 +01:00
Matt-Yorkley
d450aff607
Update Order#create_tax_charge!
...
TaxRate#adjust now handles individual items instead of the whole order 🎉 We can use this elsewhere too, for example to re-apply taxes on a single line item, we can do: Spree::TaxRate.adjust(order, [line_item])
2021-06-06 20:16:03 +01:00
Matt-Yorkley
1c28b9783f
Bring in Spree::TaxRate test coverage
2021-06-06 20:16:03 +01:00
Matt-Yorkley
f92c082df8
Refactor tax adjustment create_label method
2021-06-06 20:16:03 +01:00
Matt-Yorkley
d69f714032
Bring in changes to TaxRate#adjust
2021-06-06 20:16:03 +01:00
Matt-Yorkley
50d0952dd5
Bring in TaxRate#potentially_applicable method and add eager-loading
2021-06-06 20:16:03 +01:00
Matt-Yorkley
82e38b0156
Merge pull request #7623 from Matt-Yorkley/order-contents
...
Use OrderContents to update line items
2021-06-05 17:11:45 +02:00
Luis Ramos
5453a1c0fa
Adapt importer error to new ruby version 2.7
2021-06-04 22:42:27 +01:00
Luis Ramos
18231cd950
Adding bigdecimal to avoid errors with BigDecimal
...
v1.4.2 is the version that works for us, see here for more details: https://github.com/ruby/bigdecimal/issues/127
2021-06-04 22:42:27 +01:00
Luis Ramos
5629dfbe09
Fix warning: deprecated Object#=~ is called
2021-06-04 22:42:27 +01:00
Luis Ramos
21b80db0ee
Fix json v1.8.6 common.rb warning
...
Using this patch https://github.com/flori/json/issues/399#issuecomment-734863279
We can upgrade to json v2 but to do that we need to switch from aws-sdk-v1 to aws-sdk-s3 first
2021-06-04 22:42:27 +01:00
Luis Ramos
c22799bda1
Replace gsub! with gsub so that strings are not modified
2021-06-04 22:42:22 +01:00
Luis Ramos
2b187c0547
Upgrade to ruby 2.7.3
2021-06-04 22:29:49 +01:00
Andy Brett
640aa11f3b
Merge pull request #7744 from luisramos0/byebug
...
Move byebug to test gem group so we can use it in specs
2021-06-04 13:17:43 -07:00
Luis Ramos
b939a292df
Move byebug to test gem group so we can use it in specs
2021-06-04 20:59:50 +01:00
Matt-Yorkley
099ef5d358
Add more explicit tests on updating shipping fees in Api::ShipmentsController
2021-06-04 18:19:27 +01:00
Guido Oliveira
65b760b119
Add validations to variant_override model
2021-06-04 14:11:22 -03:00
dependabot[bot]
6de0682439
Bump test-unit from 3.4.2 to 3.4.4
...
Bumps [test-unit](https://github.com/test-unit/test-unit ) from 3.4.2 to 3.4.4.
- [Release notes](https://github.com/test-unit/test-unit/releases )
- [Commits](https://github.com/test-unit/test-unit/compare/3.4.2...3.4.4 )
---
updated-dependencies:
- dependency-name: test-unit
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2021-06-04 16:57:41 +00:00
Matt-Yorkley
efcf71fd2b
Use OrderContents in cart spec test setups
2021-06-04 17:26:49 +01:00
Matt-Yorkley
acf7c0c4d8
Use :order_with_totals factory in CustomersController spec
2021-06-04 17:10:50 +01:00
Matt-Yorkley
443b180f32
Update order totals in :order_with_totals factory
2021-06-04 17:10:50 +01:00
Matt-Yorkley
3222d4980d
Improve comment on #ensure_updated_shipments
2021-06-04 17:10:50 +01:00
Matt-Yorkley
e246eed99d
Move #restart_chceckout_flow out of Order class
2021-06-04 17:10:50 +01:00
Matt-Yorkley
b69d61dd77
Remove #order_update! call from method used in order after_save callbacks
...
This method gets called twice every time we save a completed order, calling order_update! twice...
2021-06-04 17:10:50 +01:00
Matt-Yorkley
2d76c2730a
Update shipment updating
2021-06-04 17:10:50 +01:00
Matt-Yorkley
6b364dc420
Update specs on shipping fee changes and mark as pending
...
The shipping fee and it's tax actually don't get updated correctly here (in master).
2021-06-04 17:10:50 +01:00
Matt-Yorkley
d5b20d5446
Add specs for Order#ensure_updated_shipments
2021-06-04 17:10:50 +01:00
Matt-Yorkley
05c001807e
Add variant override specs for Stock::AvailabilityValidator
2021-06-04 17:10:50 +01:00
Matt-Yorkley
011da05712
Add more test coverage to OrderContents
2021-06-04 17:10:50 +01:00
Matt-Yorkley
2e96982e60
Refactor conditional
...
CartService#populate already returns the value of the #valid? method by default.
2021-06-04 17:10:50 +01:00
Matt-Yorkley
6abe0b375c
Refactor stock levels check in CartController
2021-06-04 17:10:50 +01:00
Matt-Yorkley
dc6be6f06b
Don't resubmit the whole cart contents for no reason.
...
There's a couple of places where this was causing a cart update submission where it wasn't needed, eg the items had not actually changed. The conditional here was designed to stop that from happening, but it was actually passing every time (the conditional logic was not actually catching the case it was supposed to).
This is really expensive!
2021-06-04 17:10:50 +01:00
Matt-Yorkley
47e2976fd1
Update CartService specs
2021-06-04 17:10:50 +01:00
Matt-Yorkley
38ce9eb0c4
Update line item removal in CartService when the line item doesn't exist
2021-06-04 17:10:50 +01:00