Rspec 期望有序数组时测试失败
Rspec test failed when expecting ordered array
我正在尝试学习 RSpec 使用 每天 Rails 使用 RSpec 测试。我在我尝试使用的地方before :each do
在每次测试前加载变量。测试之前工作正常,但不再按预期通过。
测试如下:
describe "filter l_name by letter" do
before :each do
@flinstone = Recruiter.create(email: 'foobar@gmail.com',
password: 'foobar',
f_name: 'Fred',
l_name: 'Flinstone',
company: 'Picosoft')
@francis = Recruiter.create( email: 'flubber@gmail.com',
password: 'flubber',
f_name: 'Frank',
l_name: 'Francis',
company: 'Rock Inc')
@barney = Recruiter.create( email: 'foobaz@gmail.com',
password: 'foobaz',
f_name: 'Barney',
l_name: 'Rubble',
company: 'Rock Inc')
end
context "matching letters" do
it "returns sorted array of results that match" do
expect(Recruiter.by_letter('F')).to eq [@flinstone, @francis]
end
end
context "non-matching letters" do
it "returns sorted array of results that match" do
expect(Recruiter.by_letter('F')).to_not include @barney
end
end
end
这是我得到的错误:
(compared using ==)
Diff:
@@ -1,19 +1,19 @@
-[#<Recruiter:0x000000086587b0
- id: nil,
+[#<Recruiter:0x00000008560e70
+ id: 1,
email: "foobar@gmail.com",
password: "foobar",
f_name: "Fred",
l_name: "Flinstone",
company: "Picosoft",
- created_at: nil,
- updated_at: nil>,
- #<Recruiter:0x0000000863aad0
- id: nil,
+ created_at: Sat, 11 Apr 2015 18:38:31 UTC +00:00,
+ updated_at: Sat, 11 Apr 2015 18:38:31 UTC +00:00>,
+ #<Recruiter:0x00000008560d08
+ id: 2,
email: "flubber@gmail.com",
password: "flubber",
f_name: "Frank",
l_name: "Francis",
company: "Rock Inc",
- created_at: nil,
- updated_at: nil>]
+ created_at: Sat, 11 Apr 2015 18:38:31 UTC +00:00,
+ updated_at: Sat, 11 Apr 2015 18:38:31 UTC +00:00>]
尝试清除您的数据库。
我正在尝试学习 RSpec 使用 每天 Rails 使用 RSpec 测试。我在我尝试使用的地方before :each do
在每次测试前加载变量。测试之前工作正常,但不再按预期通过。
测试如下:
describe "filter l_name by letter" do
before :each do
@flinstone = Recruiter.create(email: 'foobar@gmail.com',
password: 'foobar',
f_name: 'Fred',
l_name: 'Flinstone',
company: 'Picosoft')
@francis = Recruiter.create( email: 'flubber@gmail.com',
password: 'flubber',
f_name: 'Frank',
l_name: 'Francis',
company: 'Rock Inc')
@barney = Recruiter.create( email: 'foobaz@gmail.com',
password: 'foobaz',
f_name: 'Barney',
l_name: 'Rubble',
company: 'Rock Inc')
end
context "matching letters" do
it "returns sorted array of results that match" do
expect(Recruiter.by_letter('F')).to eq [@flinstone, @francis]
end
end
context "non-matching letters" do
it "returns sorted array of results that match" do
expect(Recruiter.by_letter('F')).to_not include @barney
end
end
end
这是我得到的错误:
(compared using ==)
Diff:
@@ -1,19 +1,19 @@
-[#<Recruiter:0x000000086587b0
- id: nil,
+[#<Recruiter:0x00000008560e70
+ id: 1,
email: "foobar@gmail.com",
password: "foobar",
f_name: "Fred",
l_name: "Flinstone",
company: "Picosoft",
- created_at: nil,
- updated_at: nil>,
- #<Recruiter:0x0000000863aad0
- id: nil,
+ created_at: Sat, 11 Apr 2015 18:38:31 UTC +00:00,
+ updated_at: Sat, 11 Apr 2015 18:38:31 UTC +00:00>,
+ #<Recruiter:0x00000008560d08
+ id: 2,
email: "flubber@gmail.com",
password: "flubber",
f_name: "Frank",
l_name: "Francis",
company: "Rock Inc",
- created_at: nil,
- updated_at: nil>]
+ created_at: Sat, 11 Apr 2015 18:38:31 UTC +00:00,
+ updated_at: Sat, 11 Apr 2015 18:38:31 UTC +00:00>]
尝试清除您的数据库。