diff --git a/app/controllers/admin/base_items_controller.rb b/app/controllers/admin/base_items_controller.rb index c62e9ce6cf..2bd658613e 100644 --- a/app/controllers/admin/base_items_controller.rb +++ b/app/controllers/admin/base_items_controller.rb @@ -41,7 +41,7 @@ def show # TODO there are no buttons on the view to call this method, consider removing? def destroy @base_item = BaseItem.includes(:items).find(params[:id]) - if (@base_item.id = KitCreateService.FindOrCreateKitBaseItem.id) + if (@base_item.id = KitCreateService.FindOrCreateKitBaseItem!.id) redirect_to admin_base_items_path, alert: "You cannot delete the Kits base item. This is reserved for all Kits." elsif @base_item.items.any? && @base_item.destroy redirect_to admin_base_items_path, notice: "Base Item deleted!" diff --git a/app/models/base_item.rb b/app/models/base_item.rb index c3effddb30..eba5785e35 100644 --- a/app/models/base_item.rb +++ b/app/models/base_item.rb @@ -46,6 +46,6 @@ def self.seed_base_items end end # Create global 'Kit' base item - KitCreateService.FindOrCreateKitBaseItem + KitCreateService.FindOrCreateKitBaseItem! end end diff --git a/app/services/kit_create_service.rb b/app/services/kit_create_service.rb index f042af0b5d..3bf13e9f80 100644 --- a/app/services/kit_create_service.rb +++ b/app/services/kit_create_service.rb @@ -9,7 +9,7 @@ class KitCreateService attr_reader :kit - def self.FindOrCreateKitBaseItem + def self.FindOrCreateKitBaseItem! BaseItem.find_or_create_by!(KIT_BASE_ITEM_ATTRS) end @@ -27,9 +27,9 @@ def call @kit.save! # Find or create the BaseItem for all items housing kits - item_housing_a_kit_base_item = BaseItem.find_or_create_by!(KIT_BASE_ITEM_ATTRS) + item_housing_a_kit_base_item = KitCreateService.FindOrCreateKitBaseItem! - # Create the Item. + # Create the item item_creation = ItemCreateService.new( organization_id: organization.id, item_params: { diff --git a/spec/requests/admin/base_items_requests_spec.rb b/spec/requests/admin/base_items_requests_spec.rb index a539f52216..aee105de93 100644 --- a/spec/requests/admin/base_items_requests_spec.rb +++ b/spec/requests/admin/base_items_requests_spec.rb @@ -10,7 +10,7 @@ end it "doesn't let you delete the Kit base item" do - kit_base_item = KitCreateService.FindOrCreateKitBaseItem + kit_base_item = KitCreateService.FindOrCreateKitBaseItem! delete admin_base_item_path(id: kit_base_item.id) expect(flash[:alert]).to include("You cannot delete the Kits base item") expect(response).to be_redirect