Commit Graph

552 Commits

Author SHA1 Message Date
Gaetan Craig-Riou
c1dc87ae21 Fix enterprise fee calculator spec 2024-07-03 10:17:49 +10:00
Gaetan Craig-Riou
e48cdeba20 Fix product related permissions 2024-07-03 10:17:49 +10:00
Gaetan Craig-Riou
71e4911b9e Fix order cycle permission 2024-07-03 10:17:49 +10:00
Maikel
8837f1caa2 Revert "Allow negative stock levels for on-demand products" 2024-06-19 15:18:57 +10:00
Maikel Linke
ecbba894f7 Update stock levels of on-demand items
We weren't bothering with stock when items were on demand anyway. But we
want to track stock now so that we can backorder more when local stock
levels become negative.
2024-05-31 16:38:24 +10:00
Maikel Linke
6317fe1b71 Disable RSpec monkey patching 2024-05-09 12:24:41 +10:00
Maikel
a75f3245a0 Revert "Fix Duplicate Language Display on New User Creation" 2024-05-03 15:07:47 +10:00
Sergio Souza
9477725997 update tests for avaliable_locales 2024-04-18 08:55:34 +10:00
cyrillefr
f57d44ba24 Fix Lint/DuplicateRequire issue
- updates the todo list
2024-04-05 17:09:14 +02:00
Maikel Linke
bd6b0ddbf3 Enforce RSpec expect(..).not_to over to_not 2024-03-07 16:57:54 +11:00
David Cook
2107aeded1 Un-safely autocorrect RSpec/ExpectChange 2024-02-23 12:17:09 +11:00
Neal Chambers
7ecd4a149b Fix Style/HashSyntax 2023-09-21 22:58:42 +09:00
Neal Chambers
29df80945d Fix Style/HashSyntax 2023-09-20 23:46:26 +09:00
Konrad
fd6f2338e5 Merge pull request #11450 from mkllnk/feature-toggle-enterprise
Activate vouchers feature per user or enterprise
2023-09-04 21:30:41 +02:00
filipefurtad0
6bc8a1a850 Uncomments pluralize test 2023-08-30 22:57:46 +01:00
Maikel Linke
e12cf2aa4c Simplify feature check for multiple actors at once
I think that it's a valid case to check a feature toggle against the
user and an enterprise. You may want to check with only one user first,
then activate it for a whole enterprise and lastly activate the feature
globally.
2023-08-25 10:19:17 +10:00
Maikel Linke
0cc450e815 Allow Vouchers feature per enterprise
I also kept the per-user check to be backwards-compatible. Some
instances have that enabled already. And for early testing, you may want
to test with only one user first before all customer see it.
2023-08-25 10:19:17 +10:00
Matt-Yorkley
07774c4572 Update tax category specs 2023-07-31 09:23:20 +10:00
David Cook
6859200339 Safely autocorrect Layout/ExtraSpacing
Inspecting 1478 files
................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................C.......................................................................................................................................................................................................................C......................................................................................................................................................................................................C......................

Offenses:

spec/lib/open_food_network/property_merge_spec.rb:22:57: C: [Corrected] Layout/ExtraSpacing: Unnecessary spacing detected.
      let(:product_property) { create(:product_property,  property: property) }
                                                        ^
spec/services/cart_service_spec.rb:276:58: C: [Corrected] Layout/ExtraSpacing: Unnecessary spacing detected.
        cart_service.instance_variable_set :@order_cycle,  double(:order_cycle)
                                                         ^
spec/system/consumer/shops_spec.rb:78:46: C: [Corrected] Layout/ExtraSpacing: Unnecessary spacing detected.
      expect(page).to have_no_selector 'hub',   text: d2.name
                                             ^^

1478 files inspected, 3 offenses detected, 3 offenses corrected
2023-07-20 14:01:44 +10:00
David Cook
0030343897 Safely autocorrect Layout/BlockEndNewline
Inspecting 1478 files
......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................C...................................................................................................................................................................................................................................................................................................................................................................................C...........................................................................

Offenses:

spec/lib/open_food_network/enterprise_fee_calculator_spec.rb:127:1: C: [Corrected] Layout/IndentationWidth: Use 2 (not 10) spaces for indentation.
          create(:enterprise_fee, fee_type: 'packing', amount: 7.89, name: "Packing")
^^^^^^^^^^
spec/lib/open_food_network/enterprise_fee_calculator_spec.rb:127:3: C: [Corrected] Layout/IndentationWidth: Use 2 (not -6) spaces for indentation.
  create(:enterprise_fee, fee_type: 'packing', amount: 7.89, name: "Packing")
  ^^^^^^
spec/lib/open_food_network/enterprise_fee_calculator_spec.rb:127:87: C: [Corrected] Layout/BlockEndNewline: Expression at 127, 87 should be on its own line.
          create(:enterprise_fee, fee_type: 'packing', amount: 7.89, name: "Packing") }
                                                                                      ^
spec/lib/open_food_network/enterprise_fee_calculator_spec.rb:128:1: C: [Corrected] Layout/BlockAlignment: } at 128, 0 is not aligned with let!(:ef_packing) { at 126, 8.
}
^
spec/lib/open_food_network/enterprise_fee_calculator_spec.rb:129:91: C: [Corrected] Layout/BlockEndNewline: Expression at 129, 91 should be on its own line.
          create(:enterprise_fee, fee_type: 'transport', amount: 0.12, name: "Transport") }
                                                                                          ^
spec/lib/open_food_network/enterprise_fee_calculator_spec.rb:130:1: C: [Corrected] Layout/IndentationWidth: Use 2 (not 10) spaces for indentation.
          create(:enterprise_fee, fee_type: 'transport', amount: 0.12, name: "Transport")
^^^^^^^^^^
spec/lib/open_food_network/enterprise_fee_calculator_spec.rb:130:3: C: [Corrected] Layout/IndentationWidth: Use 2 (not -6) spaces for indentation.
  create(:enterprise_fee, fee_type: 'transport', amount: 0.12, name: "Transport")
  ^^^^^^
spec/lib/open_food_network/enterprise_fee_calculator_spec.rb:131:1: C: [Corrected] Layout/BlockAlignment: } at 131, 0 is not aligned with let!(:ef_transport) { at 129, 8.
}
^
spec/lib/open_food_network/enterprise_fee_calculator_spec.rb:131:95: C: [Corrected] Layout/BlockEndNewline: Expression at 131, 95 should be on its own line.
          create(:enterprise_fee, fee_type: 'fundraising', amount: 3.45, name: "Fundraising") }
                                                                                              ^
spec/lib/open_food_network/enterprise_fee_calculator_spec.rb:133:1: C: [Corrected] Layout/IndentationWidth: Use 2 (not 10) spaces for indentation.
          create(:enterprise_fee, fee_type: 'fundraising', amount: 3.45, name: "Fundraising")
^^^^^^^^^^
spec/lib/open_food_network/enterprise_fee_calculator_spec.rb:133:3: C: [Corrected] Layout/IndentationWidth: Use 2 (not -6) spaces for indentation.
  create(:enterprise_fee, fee_type: 'fundraising', amount: 3.45, name: "Fundraising")
  ^^^^^^
spec/lib/open_food_network/enterprise_fee_calculator_spec.rb:134:1: C: [Corrected] Layout/BlockAlignment: } at 134, 0 is not aligned with let!(:ef_fundraising) { at 132, 8.
}
^
spec/system/admin/orders_spec.rb:44:1: C: [Corrected] Layout/IndentationWidth: Use 2 (not 1) spaces for indentation.
 create(:shipping_method_with, :pickup, name: "delivery",
^
spec/system/admin/orders_spec.rb:44:3: C: [Corrected] Layout/IndentationWidth: Use 2 (not 0) spaces for indentation.
  create(:shipping_method_with, :pickup, name: "delivery",

spec/system/admin/orders_spec.rb:45:45: C: [Corrected] Layout/BlockEndNewline: Expression at 45, 45 should be on its own line.
distributors: [distributor4, distributor5]) }
                                            ^
spec/system/admin/orders_spec.rb:46:1: C: [Corrected] Layout/BlockAlignment: } at 46, 0 is not aligned with let!(:shipping_method2) { at 43, 2.
}
^

1478 files inspected, 16 offenses detected, 16 offenses corrected
2023-07-20 13:54:30 +10:00
Neal Chambers
5b6f45931c Fix Layout/LineLength 2023-06-26 13:06:56 +09:00
Matt-Yorkley
ae24b2d688 Update ScopeVariantsForSearch logic to match both product and variant SKUs 2023-06-16 21:26:28 +01:00
Matt-Yorkley
3ef7d2c9ff Remove master variant from product 2023-06-16 21:23:44 +01:00
Maikel Linke
2a943ecafb Spec setting up all feature toggle names 2023-05-05 11:09:10 +10:00
Maikel Linke
b30e962cdd Remove unknown (deleted) feature toggles at boot 2023-05-03 15:20:26 +10:00
Maikel Linke
5f1f717974 Spec FeatureToggle.setup! 2023-05-03 15:02:08 +10:00
Maikel Linke
b6f2fe0e92 Avoid defining modules in specs
We avoid some indent and show how code outside of the module works.
2023-05-03 14:58:59 +10:00
Neal Chambers
940f806e5f Fix Rubocop Layout/LineLength 2023-04-04 09:44:15 +09:00
Maikel Linke
fd68cbf56d Remove on-the-fly adding of feature toggle entries
We now have a new source of truth. You shouldn't use a feature toggle
without adding it to OpenFoodNetwork::FeatureToggle first. All toggles
are added at boot time already.
2023-03-22 15:36:08 +11:00
Maikel Linke
b5f43b3c1c Rename method because it's not changing the input
A common Ruby convention is to to use the bang naming `!` to mark method
which change the given parameter instead of returning a copy.
2023-03-21 14:30:44 +11:00
Maikel Linke
fcc68a0a19 Return new filtered list instead of modifying
This makes a clear distinction between the unfiltered and filtered list.
There may also be some gotchas when modifying the array of an
ActiveRecord relation. It also allows us to write shorter code without
storing a separate variable.
2023-03-21 14:30:44 +11:00
Maikel Linke
4c2d7c0d1c Rename confusing test variable
The "subject" is usually the code under test. In this spec it would be
the TagRuleApplicator and not the parameter given to it. So I renamed it
to avoid confusion here.
2023-03-21 14:30:44 +11:00
Maikel Linke
e227cb912b Simplify tag rule spec
We don't need to know the internals. We want to know that the applicator
is not raising an error when we give `nil` or an empty collection.
2023-03-21 14:30:44 +11:00
Maikel
058a45f4e5 Merge pull request #9442 from jibees/8904-display-fees-name-instead-of-type-on-invoices
Display fees name instead of type on invoices
2022-10-10 13:15:01 +11:00
Maikel Linke
bc26a3aa07 Add used feature toggles to appear in the admin UI
The admin UI shows only features which were added to the database. We
always had to look up a feature's name add it manually before we could
enable it. Now it will appear in the UI after some code asked if it was
enabled.

This only adds a database query once when the feature doesn't exist yet.
The `feature.exist?` call only performs an in-memory lookup in the
memoizer.
2022-10-08 16:23:17 +02:00
Jean-Baptiste Bellet
0cc8349c71 Use fee name for the adjustment label instead of type
+ update specs as well
2022-10-08 10:00:57 +02:00
Jean-Baptiste Bellet
976e326bbd Add method fees_name_by_type_for that returns fees name for a variant 2022-06-21 14:20:59 +02:00
Sebastian Castro
5f78fdce8b Reports Refactor 2: Move all code to lib/reporting 2022-05-12 16:54:13 +02:00
Sebastian Castro
2985d2af15 Report Refactor 1 Cleaning
clean no longer used methods
Remove no longer needed require
Delete files not used
Fix Linting
2022-05-12 16:54:13 +02:00
Sebastian Castro
e9513f6172 Report Refactor 1: Enterprise Fee Summary
Disable enterprise fee summary spec for now

Will need to write them again
2022-05-12 16:54:13 +02:00
Sebastian Castro
4a99a7d1de Report Refactor 1: Xero Invoices 2022-05-12 16:54:13 +02:00
Sebastian Castro
41c11baa3f Report Refactor 1: Users & Entreprises 2022-05-12 16:54:13 +02:00
Sebastian Castro
3d1b61ae6e Report Refactor 1: Products & Inventory 2022-05-12 16:54:13 +02:00
Sebastian Castro
e20c2e3ced Report Refactor 1: Orders & Distributors 2022-05-12 16:54:13 +02:00
Sebastian Castro
01be6fb1f3 Report Refactor 1: Order Cycle Management 2022-05-12 16:54:13 +02:00
Sebastian Castro
1fee45035c Report Refactor 1: Customers 2022-05-12 16:54:12 +02:00
Sebastian Castro
e55462d18b Report Refactor 1: Orders & Fulfilment 2022-05-12 16:54:12 +02:00
GeorgeThoppil
898c470c00 Change enterprise visibility scope 2022-04-21 20:27:28 -04:00
Matt-Yorkley
eef59bbaae Improve permissions query building
For larger queries and especially where filtering and paginating, these simpler product queries are way more efficient. It cuts out some very large subqueries with large lists of product ids.
2022-04-05 22:28:09 +01:00
Filipe
20c0195584 Merge pull request #8017 from cillian/hide-variants-with-no-stock
When creating backoffice orders hide variants with no stock by default
2021-12-23 21:34:06 +00:00