mirror of
https://github.com/aasm/aasm
synced 2023-03-27 23:22:41 -04:00
39 lines
1,012 B
Ruby
39 lines
1,012 B
Ruby
require 'spec_helper'
|
|
|
|
describe 'Custom AASM::Base' do
|
|
context 'when aasm_with invoked with SimpleCustomExample' do
|
|
let(:simple_custom) { SimpleCustomExample.new }
|
|
|
|
subject do
|
|
simple_custom.fill_out!
|
|
simple_custom.authorise
|
|
end
|
|
|
|
it 'has invoked authorizable?' do
|
|
expect { subject }.to change { simple_custom.authorizable_called }.from(nil).to(true)
|
|
end
|
|
|
|
it 'has invoked fillable?' do
|
|
expect { subject }.to change { simple_custom.fillable_called }.from(nil).to(true)
|
|
end
|
|
|
|
it 'has two transition counts' do
|
|
expect { subject }.to change { simple_custom.transition_count }.from(nil).to(2)
|
|
end
|
|
end
|
|
|
|
context 'when aasm_with invoked with non AASM::Base' do
|
|
subject do
|
|
Class.new do
|
|
include AASM
|
|
|
|
aasm :with_klass => String do
|
|
end
|
|
end
|
|
end
|
|
|
|
it 'should raise an ArgumentError' do
|
|
expect { subject }.to raise_error(ArgumentError, 'The class String must inherit from AASM::Base!')
|
|
end
|
|
end
|
|
end
|