0

好的,这里是 Cucumber 新手,所以请温柔一点。作为一个学习 Ruby/Cucumber/MongoDB 的人,我正在构建一个简单的联系人管理器。我有一个人(父)模型,并且能够编写一个简单的测试,如下所示:

Scenario: Show people
  Given the following person exists
 | firstname | lastname |
 | Bob      | Jones    |
  When I am on the home page
  Then I should see "Bob"

到目前为止一切都很好......但是现在我正在向它添加一个“地址”子对象数组......现在问题是上面的测试失败了......我'认为'这是因为我没有描述我的表在上述测试中不再正确,因为它现在也具有地址属性。

我的问题是,如果我想检查子对象,如何正确编写上述测试?

我的两个课程如下:

class Person < MongoBase
  key :firstname, String, :required=>true
  key :lastname, String, :required=>true

  many :addresses
end

class Address <MongoBase

  key :person_id, ObjectId
  key :street, String
  key :city, String
  key :State, String
  key :Zip, String

  belongs_to :person
end

提前致谢!

更新:原始测试现在通过了,但我仍然不知道如何设置测试,以便 Bob Jones 有一个子地址。

4

1 回答 1

0

我认为 1,000,000 美元是“失败的原因是什么”?另外-如果您使用的是 MongoMapper,那么您将希望将 Address 显式设置为 EmbeddedDocument(包括 MongoMapper::EmbeddedDocument)-这很可能是您的失败原因,因为(我不认为)您可以使用 many:XXX使用常规的 MongoMapper::Document。

于 2010-02-17T06:20:51.150 回答