Commit Graph

46 Commits

Author SHA1 Message Date
Pau Pérez Fabregat
a95dd98ed6 Merge pull request #2869 from Matt-Yorkley/bi/bulk_invoices
[Bulk Invoice Printing] Bulk invoices
2019-01-18 17:49:34 +01:00
luisramos0
aa603c9a84 Make rubocop happy on cart controller, cart service and stock levels service 2019-01-15 13:42:51 +00:00
luisramos0
c0473a4505 Extract variants_stock_levels from cart_controller and refactor some names 2019-01-15 13:38:58 +00:00
Matt-Yorkley
4f9f8adcd6 Add Service and remove Job 2019-01-10 09:57:06 +00:00
Maikel Linke
d2ba305ce6 Fix context data for tax rate finder spec
The spec was accidentally finding an exact tax rate match. The new test
data provides only close matches to choose from.

The naming of variables has been simplified as well.
2019-01-04 18:31:46 +11:00
Maikel Linke
3169a384ba Find approximate tax rate if no other is found
There are several cases in which a tax rate is not associated with an
adjustment. We find the closest one for reporting here. It is not a good
solution, but a workaround introduced for reporting:
https://github.com/openfoodfoundation/openfoodnetwork/pull/1496
2018-12-19 14:31:29 +11:00
Maikel Linke
a341561446 Move tax rate finding into service and spec it
The `#tax_rates` method is actually not present in Spree. We encapsulate
the logic in this commit and enable better unit testing. The new tests
cover a current bug: https://github.com/openfoodfoundation/openfoodnetwork/issues/3127
2018-12-19 14:31:29 +11:00
Pau Perez
453b2a99de Rename redundant #restart_checkout to #call 2018-11-23 12:05:39 +01:00
Pau Perez
88afa70f37 Simplify and speed up service tests 2018-11-23 12:04:42 +01:00
Pau Perez
2c8a1f5e78 Check for value and not object identity in spec 2018-11-23 12:04:42 +01:00
Pau Perez
3b681a59ba Move controller tests to service class tests 2018-11-23 12:04:42 +01:00
Matt-Yorkley
b826beb0d7 Inline hashes in tests 2018-10-26 21:38:57 +01:00
Matt-Yorkley
033ae4f570 Add basic SearchOrders service spec 2018-10-26 21:38:57 +01:00
luisramos0
910297572e Removed unnecessary currency from CartService constructor, using order.currency instead 2018-08-23 12:40:18 +01:00
luisramos0
ec069b1e3e Converted specs to latest rspec syntax 2018-08-23 12:39:58 +01:00
luisramos0
05bfc098ff /controllers/spree/order_populator_decorator (with a class_eval) is now /services/CartService with no dependency to Spree::OrderPopulator. 2018-08-23 12:39:55 +01:00
Rob Harrington
a902af42a3 Update attribute that errors are added to from credit_card to payment_method 2018-07-05 19:26:12 +10:00
Rob Harrington
21c24eb69b Validate presence and auth of default card for customer 2018-07-05 19:26:11 +10:00
Maikel
e9fad741e6 Merge pull request #2387 from Matt-Yorkley/embedded_referrers
Embedded response headers
2018-06-26 17:57:48 +10:00
Rob Harrington
25525ae30b Move applicator calls to OrderCycleForm 2018-06-22 09:46:08 +10:00
Rob Harrington
d9830749f1 Extract schedule syncing logic into OrderCycleForm 2018-06-22 09:46:08 +10:00
Rob Harrington
ab9c06837b Add basic OrderCycleForm to handle create/update logic 2018-06-22 09:46:08 +10:00
Matt-Yorkley
172fa168ea Change layout attribute to method with question mark 2018-06-21 15:19:40 +01:00
Matt-Yorkley
6e81871459 Specs for new EmbeddedPageService 2018-06-20 15:14:56 +01:00
Rob Harrington
7af11da901 Use a SubscriptionsCount query object to provide counts to IndexOrderCycleSerializer 2018-06-20 13:06:06 +10:00
Pau Perez
977c8f6203 Stick to setup+execution+assertion order in tests 2018-03-20 12:07:10 +01:00
Pau Perez
a7f1ed660b Add service to create a mail method
This will make loading sample data into staging environments easier.
2018-03-16 13:33:20 +01:00
Rob Harrington
31750a7bba Add logic for calculator of fee estimates to SubscriptionEstimator 2018-03-02 10:11:26 +11:00
Rob Harrington
3b2d4ae2d4 Estimator take variant overrides into account 2018-03-02 10:11:26 +11:00
Rob Harrington
14a03aab35 Fallback to previous saved estimate if calculator not available 2018-03-02 10:11:26 +11:00
Rob Harrington
904a364bf1 Stop unnecessarily passing fee_calculators around 2018-03-02 10:11:26 +11:00
Rob Harrington
b85e38010f Delegate responsibility to estimating prices for subscriptions to dedicated service object 2018-03-02 10:11:26 +11:00
Rob Harrington
add9c83812 Ensure correct price is used by OrderFactory when building line items 2018-02-22 16:16:49 +11:00
Rob Harrington
993f02a989 Add knowledge of variant overrides to OrderFactory 2018-02-22 16:16:49 +11:00
Rob Harrington
d7d40a4a0f Create new OrderFactory service object for initializing order from attr hash 2018-02-22 16:16:49 +11:00
Rob Harrington
7017c8540c Replace references to 'standing line item' with 'subscription line item' 2018-02-09 14:44:15 +11:00
Rob Harrington
b7876ebfbf Replace references to 'standing order' with 'subscription' (spec) 2018-02-09 14:44:14 +11:00
Rob Harrington
902802594f Renaming standing order files (lib, spec) 2018-02-09 14:44:13 +11:00
Rob Harrington
3e68973812 Rename StandingOrderUpdater to OrderSyncer 2018-02-09 14:44:11 +11:00
Rob Harrington
844cd79270 Clean-up of standing order form and spec 2018-02-09 14:44:10 +11:00
Rob Harrington
8ae4307a69 Move logic for updating orders to dedicated class 2018-02-09 14:44:09 +11:00
Rob Harrington
2c40252edb Extract validation logic for standing orders into service object 2018-02-09 14:44:09 +11:00
Rob Harrington
0c302b022a Move StandingOrderForm to app/services folder 2018-02-09 14:44:09 +11:00
Pau Perez
e087a008c2 Reduce coupling from controller 2017-09-08 23:55:50 +10:00
Pau Perez
4c4969e86b Do not couple with controller's ivar and session 2017-09-08 23:55:50 +10:00
Pau Perez
f6c8a11b7b Move ResetOrderService to new app/services 2017-09-08 23:55:50 +10:00