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.

War es hilfreich?

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
scroll top