0

我是 Rspec 的新手。我正在为控制器编写规范。是否可以使用规范捕获代码中的语法错误,即我想编写案例以使用 Rspec 在控制器中处理语法错误。提前致谢。

4

2 回答 2

1

理论上,您可以将一段代码作为字符串evalload包含语法错误的特定文件传递,并使用rescue Exception => e.

但我可以问为什么吗?

于 2013-10-19T12:31:20.523 回答
0

像下面这样使用 eval。

describe "Backreferences to Non-Existent Capturing Groups" do
  describe '/(a)b\1/' do
    it { expect { eval '"aba".match(/(a)\1/)' }.to_not raise_error }
  end

  describe '/(a)b\2/' do
    it { expect { eval '"aba".match(/(a)\2/)' }.to raise_error(SyntaxError) }
  end
end
于 2014-01-26T04:33:25.273 回答