A previous pull request added support for flexible decimal characters
when editing money amounts.
https://github.com/openfoodfoundation/openfoodnetwork/pull/1831
This pull request applies the same principle to the weight calculator
which was missed in the previous pull request.
The `registration_path` helper resolves to `/signup` in Spree
controllers due to spree_auth_device > config > routes.rb.
We worked around that in:
https://github.com/openfoodfoundation/openfoodnetwork/pull/3174
Here we add a spec for this so that we can test more easily if we
remove that workaround or detect it's accidental removal.
The `registration_path` helper resolves to `/signup` in Spree
controllers due to spree_auth_device > config > routes.rb.
We worked around that in:
https://github.com/openfoodfoundation/openfoodnetwork/pull/3174
Here we add a spec for this so that we can test more easily if we can
remove that workaround or detect it's accidental removal.
The admin variants controller create action is adapted (same as in the admin ProductsController). This is necessary because variant.on_hand and on_demand cannot be mass assigned on creation in v2, see VariantStock for more details.
For now we are hiding the new stock management page that comes in spree v2 as we don't need the complexity added by the management of stock per stock location (only one stock location in ofn v2 for now)
We keep tests running by default without cache, keeping it as it was before 10a79d5a65
Additionally, cached_products_renderer no longer depends on Rails.env, so here we remove that dependency from it's spec.
The shipping methods are updated to their target settings after the
subscription order has been created, so the order is created with the
"require_ship_address" factory default which is "true".
The shipping method setting at time of order creation has implications
on whether a shipment is set up for the order or not.
This fixes some assertions from using the same subscription shipping and
billing addresses, and distributor address.
One of the specs also pass because the subscription shipping address
matches the distributor address. This commit makes that scenario
clearer.
I don't know why but `Rails.logger` is still nil when evaluated from
`configure` block in `config/environments/development.rb`. The only way
I found to make ActiveSupport's cache to use the default logger is from
an initializer.
Note that `ActiveSupport::Cache::Store` uses `debug` level and so we
need to set the dev logger in that same level to see its messages. If
you want to debug in staging as well, you'll need to modify the log
level manually.
This way we don't need to touch the class implementation to enable the
products cache in development. Just change the default value in
`app/models/spree/app_configuration_decorator.rb`.