关于 ruby?? on rails:为什么这些 rspec 测试”待定”?

Why are these rspec tests "pending"?

我正在创建一个 Rails 应用程序并刚刚添加了一个文件 (app/spec/models/test_spec.rb
) 带有 5 个新的 rspec 测试:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
describe Topic do
   describe"scopes" do

     before do
       @public_topic = Topic.create # default is public
       @private_topic = Topic.create(public: false)
     end

     describe"publicly_viewable" do
       it"returns a relation of all public topics" do
         expect(Topic.publicly_viewable).to eq( [@public_topic] )
       end
     end

     describe"privately_viewable" do
       it"returns a relation of all private topics" do
         expect(Topic.privately_viewable).to eq( [@private_topic] )
       end
     end

     describe"visible_to(user)" do
       it"returns all topics if the user is present" do
         user = User.new
         expect(Topic.visible_to(user)).to eq(Topic.all)
       end

       it"returns only public topics if user is nil" do
         expect(Topic.visible_to(nil)).to eq(Topic.publicly_viewable)
       end
     end
  end
end

当我在控制台中运行 "rspec spec" 时,我得到以下输出:

在 8.38 秒内完成(文件加载耗时 1 分 40.84 秒)
18 个示例,1 个失败,5 个待处理

为什么这 5 个例子是"待定"?


Rspec 会自动在 spec/ 的其他子目录中为您创建规范。您正在整个 spec/ 目录上运行规范,其中包括自动生成的控制器规范、视图规范、路由规范等。这些都带有待处理的示例。如果您只想运行此文件中的规范,请运行 rspec spec/models/test_spec.rb