Ruby 为什么rspec没有看到这些类方法?

Ruby 为什么rspec没有看到这些类方法?,ruby,rspec,Ruby,Rspec,如果我有ruby文件maze.rb和 class Maze def self.x end def self.y end end 和一个带有 require 'maze' describe "A Maze" do it "exists" do expect(Maze).to be end it " has x-y dimension" do expect(Maze.x).to be expect(Maze.y).to be end

如果我有ruby文件
maze.rb

class Maze
  def self.x
  end 
  def self.y
  end 
end
和一个带有

require 'maze'

describe "A Maze" do
  it "exists" do
    expect(Maze).to be
  end 
  it " has x-y dimension" do
    expect(Maze.x).to be
    expect(Maze.y).to be
  end 
end
为什么Maze.x的测试失败了

失败:

1) A Maze  has x-y dimension
   Failure/Error: expect(Maze.x).to be
     expected nil to evaluate to true
   # ./spec/maze_spec.rb:8:in `block (2 levels) in <top (required)>'
1)迷宫具有x-y尺寸
失败/错误:预期(Maze.x)
期望nil计算为true
#./spec/maze_spec.rb:8:in'block(2层)in'
它正在工作

发生的情况是,类级方法没有执行任何操作,因此返回nil,而不是
methodnotfound
。只需添加
true
作为返回值即可解决此问题,即

def x
  true
end