From 19fffe24d54f5260939a4246a8a83062adb1c5cc Mon Sep 17 00:00:00 2001 From: Gerard Date: Thu, 11 Jul 2024 18:32:12 +1200 Subject: [PATCH] adding basic tests --- spec/dummy/app/avo/resources/store.rb | 1 + spec/features/avo/confirm_on_save_spec.rb | 33 +++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 spec/features/avo/confirm_on_save_spec.rb diff --git a/spec/dummy/app/avo/resources/store.rb b/spec/dummy/app/avo/resources/store.rb index 370ee655e1..b596c06003 100644 --- a/spec/dummy/app/avo/resources/store.rb +++ b/spec/dummy/app/avo/resources/store.rb @@ -1,5 +1,6 @@ class Avo::Resources::Store < Avo::BaseResource self.includes = [:location] + self.confirm_on_save = true def fields field :id, as: :id diff --git a/spec/features/avo/confirm_on_save_spec.rb b/spec/features/avo/confirm_on_save_spec.rb new file mode 100644 index 0000000000..507aed45ea --- /dev/null +++ b/spec/features/avo/confirm_on_save_spec.rb @@ -0,0 +1,33 @@ +require "rails_helper" + +RSpec.feature "ConfirmOnSave", type: :feature do + context "edit" do + let!(:store) { create :store , name: nil} + + describe "when saving the record" do + it "confirms the operation" do + visit "/admin/resources/stores/#{store.id}/edit" + + save + + expect(page).to have_selector('#turbo-confirm button[value="confirm"]') + end + + it "completes the operation on confirmation" do + visit "/admin/resources/stores/#{store.id}/edit" + + expect(page).to have_field "store[name]" + + fill_in "store[name]", with: "Changed Name" + + save + + accept_custom_alert do + click_on "Yes, I'm sure" + end + + expect(find_field_value_element("name")).to have_text "Changed Name" + end + end + end +end \ No newline at end of file