spec/contracts_spec.rb in contracts-0.10.1 vs spec/contracts_spec.rb in contracts-0.11.0
- old
+ new
@@ -224,11 +224,11 @@
end
describe "anonymous classes" do
let(:klass) do
Class.new do
- include Contracts
+ include Contracts::Core
Contract String => String
def greeting(name)
"hello, #{name}"
end
@@ -247,11 +247,11 @@
end
describe "anonymous modules" do
let(:mod) do
Module.new do
- include Contracts
+ include Contracts::Core
Contract String => String
def greeting(name)
"hello, #{name}"
end
@@ -420,9 +420,19 @@
it "should fail for maybe proc with invalid input" do
expect do
@o.maybe_call("bad")
end.to raise_error(ContractError)
+ end
+
+ describe "varargs are given with a maybe block" do
+ it "when a block is passed in, varargs should be correct" do
+ expect(@o.maybe_call(1, 2, 3) { 1 + 1 }).to eq([1, 2, 3])
+ end
+
+ it "when a block is NOT passed in, varargs should still be correct" do
+ expect(@o.maybe_call(1, 2, 3)).to eq([1, 2, 3])
+ end
end
end
describe "varargs" do
it "should pass for correct input" do