diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index 315d63885b..15cd6707e8 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -221,28 +221,12 @@ Metrics/PerceivedComplexity: - 'app/models/spree/ability.rb' - 'app/models/spree/order/checkout.rb' -# Offense count: 137 +# Offense count: 69 # This cop supports unsafe autocorrection (--autocorrect-all). # Configuration parameters: ResponseMethods. # ResponseMethods: response, last_response RSpecRails/HaveHttpStatus: Exclude: - - 'spec/controllers/api/v0/base_controller_spec.rb' - - 'spec/controllers/api/v0/customers_controller_spec.rb' - - 'spec/controllers/api/v0/enterprises_controller_spec.rb' - - 'spec/controllers/api/v0/logos_controller_spec.rb' - - 'spec/controllers/api/v0/order_cycles_controller_spec.rb' - - 'spec/controllers/api/v0/orders_controller_spec.rb' - - 'spec/controllers/api/v0/product_images_controller_spec.rb' - - 'spec/controllers/api/v0/products_controller_spec.rb' - - 'spec/controllers/api/v0/promo_images_controller_spec.rb' - - 'spec/controllers/api/v0/reports/packing_report_spec.rb' - - 'spec/controllers/api/v0/reports_controller_spec.rb' - - 'spec/controllers/api/v0/shipments_controller_spec.rb' - - 'spec/controllers/api/v0/statuses_controller_spec.rb' - - 'spec/controllers/api/v0/taxons_controller_spec.rb' - - 'spec/controllers/api/v0/terms_and_conditions_controller_spec.rb' - - 'spec/controllers/api/v0/variants_controller_spec.rb' - 'spec/controllers/cart_controller_spec.rb' - 'spec/controllers/checkout_controller_spec.rb' - 'spec/controllers/enterprises_controller_spec.rb' diff --git a/spec/controllers/api/v0/base_controller_spec.rb b/spec/controllers/api/v0/base_controller_spec.rb index e98ab3e4f6..fb67eeb11f 100644 --- a/spec/controllers/api/v0/base_controller_spec.rb +++ b/spec/controllers/api/v0/base_controller_spec.rb @@ -23,7 +23,7 @@ RSpec.describe Api::V0::BaseController do it "can make a request" do api_get :index expect(json_response).to eq( "products" => [] ) - expect(response.status).to eq(200) + expect(response).to have_http_status(:ok) end end @@ -31,7 +31,7 @@ RSpec.describe Api::V0::BaseController do it "without an API key" do api_get :index expect(json_response["products"]).to eq [] - expect(response.status).to eq(200) + expect(response).to have_http_status(:ok) end end @@ -40,7 +40,7 @@ RSpec.describe Api::V0::BaseController do request.headers["X-Spree-Token"] = "fake_key" get :index, params: {} expect(json_response).to eq( "error" => "Invalid API key (fake_key) specified." ) - expect(response.status).to eq(401) + expect(response).to have_http_status(:unauthorized) end it "using an invalid token param" do @@ -62,6 +62,6 @@ RSpec.describe Api::V0::BaseController do get :index expect(json_response) .to eq( "error" => "The resource you were looking for could not be found." ) - expect(response.status).to eq(404) + expect(response).to have_http_status(:not_found) end end diff --git a/spec/controllers/api/v0/customers_controller_spec.rb b/spec/controllers/api/v0/customers_controller_spec.rb index b232bdea45..f77fd470fe 100644 --- a/spec/controllers/api/v0/customers_controller_spec.rb +++ b/spec/controllers/api/v0/customers_controller_spec.rb @@ -20,7 +20,7 @@ module Api it "lists customers associated with the current user" do get :index - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(json_response.length).to eq 1 expect(json_response.first[:id]).to eq customer1.id end @@ -49,7 +49,7 @@ module Api context "when the update request is successful" do it "returns the id of the updated customer" do spree_post :update, params - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(json_response[:id]).to eq customer.id end end @@ -59,7 +59,7 @@ module Api it "returns a 422, with an error message" do spree_post :update, params - expect(response.status).to be 422 + expect(response).to have_http_status :unprocessable_entity expect(json_response[:error]).to be end end diff --git a/spec/controllers/api/v0/enterprises_controller_spec.rb b/spec/controllers/api/v0/enterprises_controller_spec.rb index 55fd6a2a15..5224c5f2e5 100644 --- a/spec/controllers/api/v0/enterprises_controller_spec.rb +++ b/spec/controllers/api/v0/enterprises_controller_spec.rb @@ -24,7 +24,7 @@ RSpec.describe Api::V0::EnterprisesController, type: :controller do it "changes the external_billing_id field" do api_put :update, id: enterprise.id, enterprise: enterprise_params - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(enterprise.reload.external_billing_id).to eq('INV123456') end @@ -55,7 +55,7 @@ RSpec.describe Api::V0::EnterprisesController, type: :controller do it "creates as sells=any when it is not a producer" do api_post :create, { enterprise: new_enterprise_params } - expect(response.status).to eq 201 + expect(response).to have_http_status :created enterprise = Enterprise.last expect(enterprise.sells).to eq('any') @@ -63,7 +63,7 @@ RSpec.describe Api::V0::EnterprisesController, type: :controller do it "creates a visible=hidden enterprise" do api_post :create, { enterprise: new_enterprise_params } - expect(response.status).to eq 201 + expect(response).to have_http_status :created enterprise = Enterprise.last expect(enterprise.visible).to eq("only_through_links") @@ -76,7 +76,7 @@ RSpec.describe Api::V0::EnterprisesController, type: :controller do enterprise: new_enterprise_params. merge({ user_ids: [enterprise_owner.id, manager1.id, manager2.id] }) } - expect(response.status).to eq 201 + expect(response).to have_http_status :created enterprise = Enterprise.last expect(enterprise.user_ids).to match_array([enterprise_owner.id, manager1.id, manager2.id]) @@ -115,14 +115,14 @@ RSpec.describe Api::V0::EnterprisesController, type: :controller do it "I can update enterprise logo image" do api_post :update_image, logo:, id: enterprise.id - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(response.content_type).to eq "text/html" expect(response.body).to match /logo\.png$/ end it "I can update enterprise promo image" do api_post :update_image, promo: logo, id: enterprise.id - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(response.content_type).to eq "text/html" expect(response.body).to match /logo\.png$/ end diff --git a/spec/controllers/api/v0/logos_controller_spec.rb b/spec/controllers/api/v0/logos_controller_spec.rb index 323c11c4ea..ac99bc272f 100644 --- a/spec/controllers/api/v0/logos_controller_spec.rb +++ b/spec/controllers/api/v0/logos_controller_spec.rb @@ -32,7 +32,7 @@ module Api it "removes logo" do spree_delete :destroy, enterprise_id: enterprise - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(json_response["id"]).to eq enterprise.id enterprise.reload expect(enterprise.logo).not_to be_attached @@ -44,7 +44,7 @@ module Api it "responds with error" do spree_delete :destroy, enterprise_id: enterprise - expect(response.status).to eq(409) + expect(response).to have_http_status(:conflict) expect(json_response['error']).to eq 'Logo does not exist' end end @@ -55,7 +55,7 @@ module Api it "allows removal of logo" do spree_delete :destroy, enterprise_id: enterprise - expect(response.status).to eq 200 + expect(response).to have_http_status :ok end end @@ -64,7 +64,7 @@ module Api it "allows removal of logo" do spree_delete :destroy, enterprise_id: enterprise - expect(response.status).to eq 200 + expect(response).to have_http_status :ok end end @@ -73,7 +73,7 @@ module Api it "does not allow removal of logo" do spree_delete :destroy, enterprise_id: enterprise - expect(response.status).to eq(401) + expect(response).to have_http_status(:unauthorized) enterprise.reload expect(enterprise.logo).to be_attached end @@ -84,7 +84,7 @@ module Api it "does not allow removal of logo" do spree_delete :destroy, enterprise_id: enterprise - expect(response.status).to eq(401) + expect(response).to have_http_status(:unauthorized) enterprise.reload expect(enterprise.logo).to be_attached end diff --git a/spec/controllers/api/v0/order_cycles_controller_spec.rb b/spec/controllers/api/v0/order_cycles_controller_spec.rb index 225b6f22be..55d667b1e0 100644 --- a/spec/controllers/api/v0/order_cycles_controller_spec.rb +++ b/spec/controllers/api/v0/order_cycles_controller_spec.rb @@ -97,7 +97,7 @@ module Api api_get :products, id: order_cycle.id, distributor: distributor.id, q: { with_properties: [property1.id, property2.id] } - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(product_ids).to eq [product1.id, product2.id] expect(product_ids).not_to include product3.id end @@ -117,7 +117,7 @@ module Api api_get :products, id: order_cycle.id, distributor: distributor.id, q: { with_variants_supplier_properties: [supplier_property.id] } - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(product_ids).to match_array [product1.id, product2.id] expect(product_ids).not_to include product3.id end diff --git a/spec/controllers/api/v0/orders_controller_spec.rb b/spec/controllers/api/v0/orders_controller_spec.rb index 558f14696b..46af729b6d 100644 --- a/spec/controllers/api/v0/orders_controller_spec.rb +++ b/spec/controllers/api/v0/orders_controller_spec.rb @@ -378,7 +378,7 @@ module Api private def expect_order - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(json_response[:number]).to eq order.number end diff --git a/spec/controllers/api/v0/product_images_controller_spec.rb b/spec/controllers/api/v0/product_images_controller_spec.rb index d010e7b615..60e90b997f 100644 --- a/spec/controllers/api/v0/product_images_controller_spec.rb +++ b/spec/controllers/api/v0/product_images_controller_spec.rb @@ -23,7 +23,7 @@ RSpec.describe Api::V0::ProductImagesController, type: :controller do product_id: product_without_image.id, file: image, use_route: :product_images } - expect(response.status).to eq 201 + expect(response).to have_http_status :created expect(product_without_image.reload.image.id).to eq json_response['id'] end @@ -32,7 +32,7 @@ RSpec.describe Api::V0::ProductImagesController, type: :controller do product_id: product_with_image.id, file: image, use_route: :product_images } - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(product_with_image.reload.image.id).to eq json_response['id'] end @@ -41,7 +41,7 @@ RSpec.describe Api::V0::ProductImagesController, type: :controller do product_id: product_without_image.id, file: pdf, use_route: :product_images } - expect(response.status).to eq 422 + expect(response).to have_http_status :unprocessable_entity expect(product_without_image.image).to be_nil expect(json_response["id"]).to eq nil expect(json_response["errors"]).to include "Attachment has an invalid content type" diff --git a/spec/controllers/api/v0/products_controller_spec.rb b/spec/controllers/api/v0/products_controller_spec.rb index c2954ddc6a..3fcaa49a07 100644 --- a/spec/controllers/api/v0/products_controller_spec.rb +++ b/spec/controllers/api/v0/products_controller_spec.rb @@ -50,7 +50,7 @@ RSpec.describe Api::V0::ProductsController, type: :controller do api_get :show, id: "non-existant" expect(json_response["error"]).to eq("The resource you were looking for could not be found.") - expect(response.status).to eq(404) + expect(response).to have_http_status(:not_found) end it "cannot create a new product if not an admin" do @@ -76,7 +76,7 @@ RSpec.describe Api::V0::ProductsController, type: :controller do expect(product.deleted_at).to be_nil api_delete :destroy, id: product.to_param - expect(response.status).to eq(204) + expect(response).to have_http_status(:no_content) expect { product.reload }.not_to raise_error expect(product.deleted_at).not_to be_nil end @@ -108,14 +108,14 @@ RSpec.describe Api::V0::ProductsController, type: :controller do unit_description: "things" } expect(all_attributes.all?{ |attr| json_response.keys.include? attr }).to eq(true) - expect(response.status).to eq(201) + expect(response).to have_http_status(:created) expect(Spree::Product.last.variants.first.price).to eq 123.45 end it "cannot create a new product with invalid attributes" do api_post :create, product: {} - expect(response.status).to eq(422) + expect(response).to have_http_status(:unprocessable_entity) expect(json_response["error"]).to eq("Invalid resource. Please fix errors and try again.") errors = json_response["errors"] expect(errors.keys).to match_array([ @@ -127,13 +127,13 @@ RSpec.describe Api::V0::ProductsController, type: :controller do it "can update a product" do api_put :update, id: product.to_param, product: { name: "New and Improved Product!" } - expect(response.status).to eq(200) + expect(response).to have_http_status(:ok) end it "cannot update a product with an invalid attribute" do api_put :update, id: product.to_param, product: { name: "" } - expect(response.status).to eq(422) + expect(response).to have_http_status(:unprocessable_entity) expect(json_response["error"]).to eq("Invalid resource. Please fix errors and try again.") expect(json_response["errors"]["name"]).to eq(["can't be blank"]) end @@ -142,7 +142,7 @@ RSpec.describe Api::V0::ProductsController, type: :controller do expect(product.deleted_at).to be_nil api_delete :destroy, id: product.to_param - expect(response.status).to eq(204) + expect(response).to have_http_status(:no_content) expect(product.reload.deleted_at).not_to be_nil end end @@ -168,7 +168,7 @@ RSpec.describe Api::V0::ProductsController, type: :controller do it 'responds with a successful response' do spree_post :clone, product_id: product.id, format: :json - expect(response.status).to eq(201) + expect(response).to have_http_status(:created) end it 'clones the product' do @@ -180,7 +180,7 @@ RSpec.describe Api::V0::ProductsController, type: :controller do it 'clones a product with image' do spree_post :clone, product_id: product_with_image.id, format: :json - expect(response.status).to eq(201) + expect(response).to have_http_status(:created) expect(json_response['name']).to eq("COPY OF #{product_with_image.name}") end @@ -208,7 +208,7 @@ RSpec.describe Api::V0::ProductsController, type: :controller do it 'responds with a successful response' do spree_post :clone, product_id: product.id, format: :json - expect(response.status).to eq(201) + expect(response).to have_http_status(:created) end it 'clones the product' do @@ -220,7 +220,7 @@ RSpec.describe Api::V0::ProductsController, type: :controller do it 'clones a product with image' do spree_post :clone, product_id: product_with_image.id, format: :json - expect(response.status).to eq(201) + expect(response).to have_http_status(:created) expect(json_response['name']).to eq("COPY OF #{product_with_image.name}") end end diff --git a/spec/controllers/api/v0/promo_images_controller_spec.rb b/spec/controllers/api/v0/promo_images_controller_spec.rb index 0b3d173efb..df12d3a70f 100644 --- a/spec/controllers/api/v0/promo_images_controller_spec.rb +++ b/spec/controllers/api/v0/promo_images_controller_spec.rb @@ -32,7 +32,7 @@ module Api it "removes promo image" do spree_delete :destroy, enterprise_id: enterprise - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(json_response["id"]).to eq enterprise.id enterprise.reload expect(enterprise.promo_image).not_to be_attached @@ -44,7 +44,7 @@ module Api it "responds with error" do spree_delete :destroy, enterprise_id: enterprise - expect(response.status).to eq(409) + expect(response).to have_http_status(:conflict) expect(json_response['error']).to eq 'Promo image does not exist' end end @@ -55,7 +55,7 @@ module Api it "allows removal of promo image" do spree_delete :destroy, enterprise_id: enterprise - expect(response.status).to eq 200 + expect(response).to have_http_status :ok end end @@ -64,7 +64,7 @@ module Api it "allows removal of promo image" do spree_delete :destroy, enterprise_id: enterprise - expect(response.status).to eq 200 + expect(response).to have_http_status :ok end end @@ -73,7 +73,7 @@ module Api it "does not allow removal of promo image" do spree_delete :destroy, enterprise_id: enterprise - expect(response.status).to eq(401) + expect(response).to have_http_status(:unauthorized) enterprise.reload expect(enterprise.promo_image).to be_attached end @@ -84,7 +84,7 @@ module Api it "does not allow removal of promo image" do spree_delete :destroy, enterprise_id: enterprise - expect(response.status).to eq(401) + expect(response).to have_http_status(:unauthorized) enterprise.reload expect(enterprise.promo_image).to be_attached end diff --git a/spec/controllers/api/v0/reports/packing_report_spec.rb b/spec/controllers/api/v0/reports/packing_report_spec.rb index 31b40bb176..055ddc737d 100644 --- a/spec/controllers/api/v0/reports/packing_report_spec.rb +++ b/spec/controllers/api/v0/reports/packing_report_spec.rb @@ -27,7 +27,7 @@ RSpec.describe Api::V0::ReportsController, type: :controller do it "renders results" do api_get :show, params - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(json_response[:data]).to match_array report_output(order, "distributor") end end @@ -44,7 +44,7 @@ RSpec.describe Api::V0::ReportsController, type: :controller do it "renders results" do api_get :show, params - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(json_response[:data]).to match_array report_output(order, "supplier") end end diff --git a/spec/controllers/api/v0/reports_controller_spec.rb b/spec/controllers/api/v0/reports_controller_spec.rb index 6c6000300d..7f7dd358fe 100644 --- a/spec/controllers/api/v0/reports_controller_spec.rb +++ b/spec/controllers/api/v0/reports_controller_spec.rb @@ -42,7 +42,7 @@ RSpec.describe Api::V0::ReportsController, type: :controller do it "returns an error" do api_get :show, q: { example: 'test' } - expect(response.status).to eq 422 + expect(response).to have_http_status :unprocessable_entity expect(json_response["error"]).to eq 'Please specify a report type' end end @@ -53,7 +53,7 @@ RSpec.describe Api::V0::ReportsController, type: :controller do it "returns an error" do api_get :show, report_type: "xxxxxx", q: { example: 'test' } - expect(response.status).to eq 422 + expect(response).to have_http_status :unprocessable_entity expect(json_response["error"]).to eq 'Report not found' end end @@ -63,7 +63,7 @@ RSpec.describe Api::V0::ReportsController, type: :controller do it "returns an error" do api_get :show, report_type: "packing" - expect(response.status).to eq 422 + expect(response).to have_http_status :unprocessable_entity expect(json_response["error"]).to eq('Please supply Ransack search params in the request') end end diff --git a/spec/controllers/api/v0/shipments_controller_spec.rb b/spec/controllers/api/v0/shipments_controller_spec.rb index 56b2404a1e..4298373ab4 100644 --- a/spec/controllers/api/v0/shipments_controller_spec.rb +++ b/spec/controllers/api/v0/shipments_controller_spec.rb @@ -126,7 +126,7 @@ RSpec.describe Api::V0::ShipmentsController, type: :controller do api_put :ready, order_id: shipment.order.to_param, id: shipment.to_param expect(json_response["error"]).to eq("Cannot ready shipment.") - expect(response.status).to eq(422) + expect(response).to have_http_status(:unprocessable_entity) end describe "#add and #remove" do @@ -150,7 +150,7 @@ RSpec.describe Api::V0::ShipmentsController, type: :controller do it 'adds a variant to a shipment' do expect { api_put :add, params.merge(variant_id: new_variant.to_param) - expect(response.status).to eq(200) + expect(response).to have_http_status(:ok) }.to change { inventory_units_for(new_variant).size }.by(2) end @@ -163,7 +163,7 @@ RSpec.describe Api::V0::ShipmentsController, type: :controller do it 'removes a variant from a shipment' do expect { api_put :remove, params.merge(variant_id: existing_variant.to_param) - expect(response.status).to eq(200) + expect(response).to have_http_status(:ok) }.to change { inventory_units_for(existing_variant).size }.by(-2) end @@ -189,14 +189,14 @@ RSpec.describe Api::V0::ShipmentsController, type: :controller do it "doesn't adjust stock when adding a variant" do expect { api_put :add, params.merge(variant_id: existing_variant.to_param) - expect(response.status).to eq(422) + expect(response).to have_http_status(:unprocessable_entity) }.not_to change { existing_variant.reload.on_hand } end it "doesn't adjust stock when removing a variant" do expect { api_put :remove, params.merge(variant_id: existing_variant.to_param) - expect(response.status).to eq(422) + expect(response).to have_http_status(:unprocessable_entity) }.not_to change { existing_variant.reload.on_hand } end end @@ -283,7 +283,7 @@ RSpec.describe Api::V0::ShipmentsController, type: :controller do expect(order.payment_state).to eq "paid" # order is fully paid for api_put :update, params - expect(response.status).to eq 200 + expect(response).to have_http_status :ok order.reload @@ -296,7 +296,7 @@ RSpec.describe Api::V0::ShipmentsController, type: :controller do it "updates closed adjustments" do expect { api_put :update, params - expect(response.status).to eq 200 + expect(response).to have_http_status :ok }.to change { order.reload.shipment.fee_adjustment.amount } end end @@ -419,7 +419,7 @@ RSpec.describe Api::V0::ShipmentsController, type: :controller do end def expect_valid_response - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(json_response.keys).to include(*attributes) end @@ -429,7 +429,7 @@ RSpec.describe Api::V0::ShipmentsController, type: :controller do end def expect_error_response - expect(response.status).to eq 422 + expect(response).to have_http_status :unprocessable_entity expect(json_response["exception"]).to eq error_message end end diff --git a/spec/controllers/api/v0/statuses_controller_spec.rb b/spec/controllers/api/v0/statuses_controller_spec.rb index cf95869bac..3fd9973b3a 100644 --- a/spec/controllers/api/v0/statuses_controller_spec.rb +++ b/spec/controllers/api/v0/statuses_controller_spec.rb @@ -10,21 +10,21 @@ module Api it "returns alive when up to date" do Spree::Config.last_job_queue_heartbeat_at = Time.now.in_time_zone get :job_queue - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(response.body).to eq({ alive: true }.to_json) end it "returns dead otherwise" do Spree::Config.last_job_queue_heartbeat_at = 10.minutes.ago get :job_queue - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(response.body).to eq({ alive: false }.to_json) end it "returns dead when no heartbeat recorded" do Spree::Config.last_job_queue_heartbeat_at = nil get :job_queue - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(response.body).to eq({ alive: false }.to_json) end end diff --git a/spec/controllers/api/v0/taxons_controller_spec.rb b/spec/controllers/api/v0/taxons_controller_spec.rb index a41f7c7d75..7724153d36 100644 --- a/spec/controllers/api/v0/taxons_controller_spec.rb +++ b/spec/controllers/api/v0/taxons_controller_spec.rb @@ -59,13 +59,13 @@ RSpec.describe Api::V0::TaxonsController do api_post :create, taxon: { name: "Colors" } expect(attributes.all? { |a| json_response.include? a }).to be true - expect(response.status).to eq(201) + expect(response).to have_http_status(:created) end it "cannot create a new taxon with invalid attributes" do api_post :create, taxon: {} - expect(response.status).to eq(422) + expect(response).to have_http_status(:unprocessable_entity) expect(json_response["error"]).to eq("Invalid resource. Please fix errors and try again.") errors = json_response["errors"] @@ -76,7 +76,7 @@ RSpec.describe Api::V0::TaxonsController do it "can destroy" do api_delete :destroy, id: taxon2.id - expect(response.status).to eq(204) + expect(response).to have_http_status(:no_content) end end end diff --git a/spec/controllers/api/v0/terms_and_conditions_controller_spec.rb b/spec/controllers/api/v0/terms_and_conditions_controller_spec.rb index 1ca17ec0d9..e6e6bdefc2 100644 --- a/spec/controllers/api/v0/terms_and_conditions_controller_spec.rb +++ b/spec/controllers/api/v0/terms_and_conditions_controller_spec.rb @@ -26,7 +26,7 @@ module Api it "removes terms and conditions file" do spree_delete :destroy, enterprise_id: enterprise - expect(response.status).to eq 200 + expect(response).to have_http_status :ok expect(json_response["id"]).to eq enterprise.id enterprise.reload expect(enterprise.terms_and_conditions).not_to be_attached @@ -42,7 +42,7 @@ module Api it "responds with error" do spree_delete :destroy, enterprise_id: enterprise - expect(response.status).to eq(409) + expect(response).to have_http_status(:conflict) expect(json_response['error']).to eq 'Terms and Conditions file does not exist' end end diff --git a/spec/controllers/api/v0/variants_controller_spec.rb b/spec/controllers/api/v0/variants_controller_spec.rb index ec200f1389..744ddedbd2 100644 --- a/spec/controllers/api/v0/variants_controller_spec.rb +++ b/spec/controllers/api/v0/variants_controller_spec.rb @@ -107,7 +107,7 @@ RSpec.describe Api::V0::VariantsController, type: :controller do it "deletes a variant" do api_delete :destroy, id: variant_to_delete.id - expect(response.status).to eq(204) + expect(response).to have_http_status(:no_content) expect { variant_to_delete.reload }.not_to raise_error expect(variant_to_delete.deleted_at).to be_present end @@ -150,7 +150,7 @@ RSpec.describe Api::V0::VariantsController, type: :controller do product_id: variant.product.id expect(attributes.all?{ |attr| json_response.include? attr.to_s }).to eq(true) - expect(response.status).to eq(201) + expect(response).to have_http_status(:created) expect(json_response["sku"]).to eq("12345") expect(variant.product.variants.count).to eq(original_number_of_variants + 1) end @@ -158,13 +158,13 @@ RSpec.describe Api::V0::VariantsController, type: :controller do it "can update a variant" do api_put :update, id: variant.to_param, variant: { sku: "12345" } - expect(response.status).to eq(200) + expect(response).to have_http_status(:ok) end it "can delete a variant" do api_delete :destroy, id: variant.to_param - expect(response.status).to eq(204) + expect(response).to have_http_status(:no_content) expect { variant.reload }.not_to raise_error expect(variant.deleted_at).not_to be_nil end