Schienen, Gurke: make Objekt und seine Verbände
-
28-09-2019 - |
Frage
Ich bin mit mongoid , Maschinist 2 und Beize . Aber ich denke, diese Frage häufiger.
Ich habe ein Konto Modell:
class Account
include Mongoid::Document
include Mongoid::Timestamps
referenced_in :user
end
und Benutzer:
class User
include Mongoid::Document
include Mongoid::Timestamps
references_one :account
end
Ich habe folgendes Szenario (I Satz reference_one Vereinigung):
Scenario: Client views his account
Given a user with id: "4ceede9b5e6f991aef000007"
And the following accounts exist:
| user_id |
| 4ceede9b5e6f991aef000007 |
.....
Ich denke, diese Idee Verwendung ids so nicht so gut ist. Was ist die beste Praxis-Objekt mit den Verbänden der Erstellung? Ich wäre schön, wenn Gurke sein. zum Beispiel könnte helfen.
Lösung
Sie können die Pläne einrichten wie folgt aus:
User.blueprint do
name
# ...
end
Account.blueprint do
user
# ...
end
Und innen Gurke:
Given the following accounts exist
| user |
| Fred |
| Ethel |
Wenn Beize behandelt nicht den Schritt oben, können Sie Ihre eigene Schritt Definition wie folgt erstellen:
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
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow