Simplify test setup with enabled features

If a feature is activated or not depends on the database which is reset
after each test scenario. So enabling a feature doesn't leak into other
scenarios.

Just enabling the feature is less code and more realistic than mocking a
method call.
This commit is contained in:
Maikel Linke
2022-10-27 15:32:05 +11:00
parent f9246f1917
commit 56667f6142
6 changed files with 8 additions and 28 deletions

View File

@@ -88,10 +88,7 @@ module PaymentGateways
context "using split checkout" do
before do
allow(OpenFoodNetwork::FeatureToggle).
to receive(:enabled?).with(:split_checkout) { true }
allow(OpenFoodNetwork::FeatureToggle).
to receive(:enabled?).with(:split_checkout, anything) { true }
Flipper.enable(:split_checkout)
order.update_attribute :state, "confirmation"
end

View File

@@ -16,10 +16,7 @@ describe SplitCheckoutController, type: :controller do
let(:shipping_method) { distributor.shipping_methods.first }
before do
allow(OpenFoodNetwork::FeatureToggle).
to receive(:enabled?).with(:split_checkout) { true }
allow(OpenFoodNetwork::FeatureToggle).
to receive(:enabled?).with(:split_checkout, anything) { true }
Flipper.enable(:split_checkout)
exchange.variants << order.line_items.first.variant
allow(controller).to receive(:current_order) { order }

View File

@@ -83,8 +83,7 @@ describe "As a consumer I want to check out my cart", js: true do
context "split checkout" do
before do
allow(OpenFoodNetwork::FeatureToggle).to receive(:enabled?).with(:split_checkout) { true }
allow(OpenFoodNetwork::FeatureToggle).to receive(:enabled?).with(:split_checkout, anything) { true }
Flipper.enable(:split_checkout)
end
include_examples "with different checkout types", "split_checkout"
end

View File

@@ -65,8 +65,7 @@ describe "As a consumer, I want to checkout my order", js: true do
}
before do
allow(OpenFoodNetwork::FeatureToggle).to receive(:enabled?).with(:split_checkout).and_return(true)
allow(OpenFoodNetwork::FeatureToggle).to receive(:enabled?).with(:split_checkout, anything).and_return(true)
Flipper.enable(:split_checkout)
add_enterprise_fee enterprise_fee
set_order order

View File

@@ -111,10 +111,7 @@ describe "As a consumer, I want to see adjustment breakdown" do
context "on split-checkout" do
before do
allow(OpenFoodNetwork::FeatureToggle).
to receive(:enabled?).with(:split_checkout).and_return(true)
allow(OpenFoodNetwork::FeatureToggle).
to receive(:enabled?).with(:split_checkout, anything).and_return(true)
Flipper.enable(:split_checkout)
set_order order_within_zone
login_as(user_within_zone)
@@ -171,10 +168,7 @@ describe "As a consumer, I want to see adjustment breakdown" do
context "on split-checkout" do
before do
allow(OpenFoodNetwork::FeatureToggle).
to receive(:enabled?).with(:split_checkout).and_return(true)
allow(OpenFoodNetwork::FeatureToggle).
to receive(:enabled?).with(:split_checkout, anything).and_return(true)
Flipper.enable(:split_checkout)
set_order order_outside_zone
login_as(user_outside_zone)

View File

@@ -118,10 +118,7 @@ describe "As a consumer, I want to see adjustment breakdown" do
context "on split-checkout" do
before do
allow(OpenFoodNetwork::FeatureToggle).
to receive(:enabled?).with(:split_checkout).and_return(true)
allow(OpenFoodNetwork::FeatureToggle).
to receive(:enabled?).with(:split_checkout, anything).and_return(true)
Flipper.enable(:split_checkout)
set_order order_within_zone
login_as(user_within_zone)
@@ -181,10 +178,7 @@ describe "As a consumer, I want to see adjustment breakdown" do
context "on split-checkout" do
before do
allow(OpenFoodNetwork::FeatureToggle).
to receive(:enabled?).with(:split_checkout).and_return(true)
allow(OpenFoodNetwork::FeatureToggle).
to receive(:enabled?).with(:split_checkout, anything).and_return(true)
Flipper.enable(:split_checkout)
set_order order_outside_zone
login_as(user_outside_zone)