From c78118fd410c640c1a307d255e403ed1b5a487ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Busqu=C3=A9?= Date: Mon, 14 Aug 2023 09:53:01 +0200 Subject: [PATCH] Fix specs due to upstream changes on states_required field Country factory was changed to assign a realistic states_required field. We update our test suite to account for this change. See https://github.com/solidusio/solidus/pull/4272 [skip ci] --- .../mutations/checkout/add_addresses_to_checkout_spec.rb | 2 +- spec/integration/queries/countries_spec.rb | 4 ++-- spec/integration/queries/current_user_spec.rb | 9 +++++++-- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/spec/integration/mutations/checkout/add_addresses_to_checkout_spec.rb b/spec/integration/mutations/checkout/add_addresses_to_checkout_spec.rb index cf481e7e..7490eac8 100644 --- a/spec/integration/mutations/checkout/add_addresses_to_checkout_spec.rb +++ b/spec/integration/mutations/checkout/add_addresses_to_checkout_spec.rb @@ -13,7 +13,7 @@ ] } - let(:country_id) { SolidusGraphqlApi::Schema.id_from_object(create(:country), nil, nil) } + let(:country_id) { SolidusGraphqlApi::Schema.id_from_object(create(:country, states_required: false), nil, nil) } let(:address) { address = build_stubbed(:address).slice(:address1, :city, :phone, :zipcode) address[:countryId] = country_id diff --git a/spec/integration/queries/countries_spec.rb b/spec/integration/queries/countries_spec.rb index cc57dbf2..a1e61131 100644 --- a/spec/integration/queries/countries_spec.rb +++ b/spec/integration/queries/countries_spec.rb @@ -9,8 +9,8 @@ end context 'when countries exists' do - let!(:us_country) { create(:country, :with_states, id: 1) } - let!(:it_country) { create(:country, id: 2, iso: 'IT') } + let!(:us_country) { create(:country, :with_states, id: 1, states_required: false) } + let!(:it_country) { create(:country, id: 2, iso: 'IT', states_required: false) } it { is_expected.to match_response(:countries) } end diff --git a/spec/integration/queries/current_user_spec.rb b/spec/integration/queries/current_user_spec.rb index 83c926bd..79db71ff 100644 --- a/spec/integration/queries/current_user_spec.rb +++ b/spec/integration/queries/current_user_spec.rb @@ -12,8 +12,13 @@ bill_address: bill_address) } - let(:ship_address) { create(:ship_address, id: 1, zipcode: 10_001) } - let(:bill_address) { create(:bill_address, id: 2, zipcode: 10_002) } + # Previos to Solidus v3.3, states_required was always false and the state was + # always automatically assigned. We force the behavior here to have the same + # response for any Solidus version. + let(:country) { create(:country, states_required: false) } + let(:state) { create(:state, name: "Alabama", abbr: "AL", country: country) } + let(:ship_address) { create(:ship_address, id: 1, zipcode: 10_001, country: country, state: state) } + let(:bill_address) { create(:bill_address, id: 2, zipcode: 10_002, country: country, state: state) } let(:credit_card) { create(:credit_card, user: user,