Конечный автомат AASM уже запущен и работает в моем приложении, но я хочу использовать сопоставления AASM RSpec для моего файла спецификации модели.
Для моего Gemfile у меня установлено следующее (краткий список, конечно):
➜ ✗ gem list
*** LOCAL GEMS ***
aasm (5.0.1, 4.0.8)
capybara (2.6.2)
factory_girl (4.5.0)
factory_girl_rails (4.5.0)
faker (1.7.3)
rspec (3.4.0)
rspec-collection_matchers (1.1.2)
rspec-console (0.6.1)
rspec-core (3.4.2)
rspec-expectations (3.4.0)
rspec-its (1.2.0)
rspec-mocks (3.4.1)
rspec-rails (3.4.2)
rspec-rerun (1.1.0)
rspec-support (3.4.1)
В соответствии с документом AASM я добавил require 'aasm/rspec'
в свой файл spec_helper.rb:
require 'capybara/rspec'
require 'faker'
require 'factory_girl'
require 'database_cleaner'
require 'shoulda/matchers'
require 'paperclip/matchers'
require 'factory_girl_association_callbacks'
require 'rspec_controller_context'
require 'capybara/poltergeist'
require 'capybara/dsl'
require 'site_prism'
require 'email_spec'
require 'paper_trail/frameworks/rspec'
require 'aasm/rspec'
Перед добавлением любых сопоставлений AASM Rspec вмой файл спецификаций, я хотел убедиться, что мои настройки были в порядке.Поэтому я просто запустил RSpec для файла и получил следующую ошибку:
Coverage report generated for RSpec to /Users/happymeal/coverage. 387 / 1272 LOC (30.42%) covered.
/Users/happymeal/.rvm/gems/ruby-2.2.9/gems/activesupport-4.2.10/lib/active_support/dependencies.rb:274:in `require': cannot load such file -- aasm/rspec (LoadError)
from /Users/happymeal/.rvm/gems/ruby-2.2.9/gems/activesupport-4.2.10/lib/active_support/dependencies.rb:274:in `block in require'
from /Users/happymeal/.rvm/gems/ruby-2.2.9/gems/activesupport-4.2.10/lib/active_support/dependencies.rb:240:in `load_dependency'
from /Users/happymeal/.rvm/gems/ruby-2.2.9/gems/activesupport-4.2.10/lib/active_support/dependencies.rb:274:in `require'
from /Users/happymeal/spec/rails_helper.rb:23:in `<top (required)>'
from /Users/happymeal/spec/features/users/admin_create_spec.rb:1:in `require'
from /Users/happymeal/spec/features/users/admin_create_spec.rb:1:in `<top (required)>'
from /Users/happymeal/.rvm/gems/ruby-2.2.9/gems/rspec-core-3.4.2/lib/rspec/core/configuration.rb:1361:in `load'
from /Users/happymeal/.rvm/gems/ruby-2.2.9/gems/rspec-core-3.4.2/lib/rspec/core/configuration.rb:1361:in `block in load_spec_files'
from /Users/happymeal/.rvm/gems/ruby-2.2.9/gems/rspec-core-3.4.2/lib/rspec/core/configuration.rb:1359:in `each'
from /Users/happymeal/.rvm/gems/ruby-2.2.9/gems/rspec-core-3.4.2/lib/rspec/core/configuration.rb:1359:in `load_spec_files'
from /Users/happymeal/.rvm/gems/ruby-2.2.9/gems/rspec-core-3.4.2/lib/rspec/core/runner.rb:106:in `setup'
from /Users/happymeal/.rvm/gems/ruby-2.2.9/gems/rspec-core-3.4.2/lib/rspec/core/runner.rb:92:in `run'
from /Users/happymeal/.rvm/gems/ruby-2.2.9/gems/rspec-core-3.4.2/lib/rspec/core/runner.rb:78:in `run'
from /Users/happymeal/.rvm/gems/ruby-2.2.9/gems/rspec-core-3.4.2/lib/rspec/core/runner.rb:45:in `invoke'
from /Users/happymeal/.rvm/gems/ruby-2.2.9/gems/rspec-core-3.4.2/exe/rspec:4:in `<top (required)>'
from /Users/happymeal/.rvm/gems/ruby-2.2.9/bin/rspec:23:in `load'
from /Users/happymeal/.rvm/gems/ruby-2.2.9/bin/rspec:23:in `<main>'
from /Users/happymeal/.rvm/gems/ruby-2.2.9/bin/ruby_executable_hooks:24:in `eval'
from /Users/happymeal/.rvm/gems/ruby-2.2.9/bin/ruby_executable_hooks:24:in `<main>'
И да ... мой файл спецификаций имеет require 'rails_helper'
вверху.
У меня такое ощущение, что эточто-то действительно маленькое, я скучаю.Вся помощь приветствуется, поскольку я хочу использовать transition_from
, have_state
, allow_event
и allow_transition_to
.Заранее спасибо.