From 626bb16a9fc146d8231a78f96e48babf4b91d559 Mon Sep 17 00:00:00 2001 From: Akshay Birajdar Date: Mon, 26 Oct 2020 13:10:50 +0530 Subject: [PATCH 1/2] Adds spec for #human_event_name to accept event object --- spec/unit/localizer_spec.rb | 48 ++++++++++++++++++++++++++++++------- 1 file changed, 40 insertions(+), 8 deletions(-) diff --git a/spec/unit/localizer_spec.rb b/spec/unit/localizer_spec.rb index 5264ce3f..7f3ff5fa 100644 --- a/spec/unit/localizer_spec.rb +++ b/spec/unit/localizer_spec.rb @@ -29,12 +29,28 @@ end context 'aasm.human_event_name' do - it 'should return translated event name' do - expect(LocalizerTestModel.aasm.human_event_name(:close)).to eq("Let's close it!") + context 'with event name' do + it 'should return translated event name' do + expect(LocalizerTestModel.aasm.human_event_name(:close)).to eq("Let's close it!") + end + + it 'should return humanized event name' do + expect(LocalizerTestModel.aasm.human_event_name(:open)).to eq("Open") + end end - it 'should return humanized event name' do - expect(LocalizerTestModel.aasm.human_event_name(:open)).to eq("Open") + context 'with event object' do + it 'should return translated event name' do + event = LocalizerTestModel.aasm.events.detect { |e| e.name == :close } + + expect(LocalizerTestModel.aasm.human_event_name(event)).to eq("Let's close it!") + end + + it 'should return humanized event name' do + event = LocalizerTestModel.aasm.events.detect { |e| e.name == :open } + + expect(LocalizerTestModel.aasm.human_event_name(event)).to eq("Open") + end end end end @@ -65,12 +81,28 @@ end context 'aasm.human_event_name' do - it 'should return translated event name' do - expect(LocalizerTestModel.aasm.human_event_name(:close)).to eq("Let's close it!") + context 'with event name' do + it 'should return translated event name' do + expect(LocalizerTestModel.aasm.human_event_name(:close)).to eq("Let's close it!") + end + + it 'should return humanized event name' do + expect(LocalizerTestModel.aasm.human_event_name(:open)).to eq("Open") + end end - it 'should return humanized event name' do - expect(LocalizerTestModel.aasm.human_event_name(:open)).to eq("Open") + context 'with event object' do + it 'should return translated event name' do + event = LocalizerTestModel.aasm.events.detect { |e| e.name == :close } + + expect(LocalizerTestModel.aasm.human_event_name(event)).to eq("Let's close it!") + end + + it 'should return humanized event name' do + event = LocalizerTestModel.aasm.events.detect { |e| e.name == :open } + + expect(LocalizerTestModel.aasm.human_event_name(event)).to eq("Open") + end end end end From 3748cc01272cb653b8e24fc792702c09e2e38bf2 Mon Sep 17 00:00:00 2001 From: Akshay Birajdar Date: Mon, 26 Oct 2020 13:11:59 +0530 Subject: [PATCH 2/2] Add #to_s to event --- lib/aasm/core/event.rb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/aasm/core/event.rb b/lib/aasm/core/event.rb index b3722820..77747f87 100644 --- a/lib/aasm/core/event.rb +++ b/lib/aasm/core/event.rb @@ -110,6 +110,10 @@ def failed_callbacks transitions.flat_map(&:failures) end + def to_s + name.to_s + end + private def attach_event_guards(definitions)