1
aasm gem을 사용하여 프로젝트의 상태 전이를 처리하고 있습니다. I는 다음과 같습니다 간단한 모델을 가지고 :rspec을 사용하여 aasm 상태 전이 테스트
class TransferPostingBid < ActiveRecord::Base
include AASM
aasm :status do
state :offered, initial: true
state :wait_for_pap_confirmation
state :confirmed_by_pap
state :retracted_by_pap
event :pap_choosed do
transitions from: :offered, to: :wait_for_pap_confirmation
end
event :confirmed_by_pap do
transitions from: :wait_for_pap_confirmation, to: :confirmed_by_pap
end
event :retracted_by_pap do
transitions from: :wait_for_pap_confirmation, to: :retracted_by_pap
end
end
end
내가 RSpec에 매처 (matcher)에 내장 aasm로 전환을 테스트하기 위해 노력하고있어 :
require 'rails_helper'
describe TransferPostingBid, type: :model do
describe 'state transitions' do
let(:transfer_posting_bid) { TransferPostingBid.new }
it 'has default state' do
expect(transfer_posting_bid).to transition_from(:offered).to(:wait_for_pap_confirmation).on_event(:pap_choosed)
end
end
end
나는 그것이 오류 다음 날 반환이 스펙을 실행하면 :
AASM::UnknownStateMachineError:
There is no state machine with the name 'default' defined in TransferPostingBid!
어떻게 해결할 수 있습니까?