Рельсы, огурец: Сделайте объект и его ассоциации
-
28-09-2019 - |
Вопрос
я использую монгоидный, машинист 2. а также соленый огурец. Отказ Но я думаю, что этот вопрос более распространен.
У меня есть учетная запись:
class Account
include Mongoid::Document
include Mongoid::Timestamps
referenced_in :user
end
И пользователь:
class User
include Mongoid::Document
include Mongoid::Timestamps
references_one :account
end
У меня есть следующий сценарий (я устанавливаю ассоциацию справки):
Scenario: Client views his account
Given a user with id: "4ceede9b5e6f991aef000007"
And the following accounts exist:
| user_id |
| 4ceede9b5e6f991aef000007 |
.....
Я думаю, что это не так хорошая идея, используйте IDS таким образом. Какова лучшая практика создания объекта с ассоциациями? Я был бы хорош, если соленья. Например, может помочь.
Решение
Вы можете настроить чертежи, как это:
User.blueprint do
name
# ...
end
Account.blueprint do
user
# ...
end
И внутри огурца:
Given the following accounts exist
| user |
| Fred |
| Ethel |
Если Syple не обрабатывает шаг выше, вы можете создать собственное определение шага:
Given /^the following accounts:$/ do |class_name, table|
table.hashes.each do |attributes|
u = User.make! :name => attributes[:user]
Account.make! :user => u
end
end
Не связан с StackOverflow