spec/memoit_spec.rb in memoit-0.1.1 vs spec/memoit_spec.rb in memoit-0.1.2
- old
+ new
@@ -8,10 +8,15 @@
end
memoize def bar(*values)
rand
end
+
+ memoize def falsy
+ foo
+ false
+ end
end
end
let(:instance) { klass.new }
describe ".memoize" do
@@ -28,8 +33,13 @@
expect(instance.bar(a, 1, :foo, "bar")).not_to eq(instance.bar(Object.new, 1, :foo, "bar"))
end
it "ignores cache when block given" do
expect(instance.foo { }).not_to eq(instance.foo { })
+ end
+
+ it "caches falsy values" do
+ expect(instance).to receive(:foo).once
+ expect(instance.falsy).to eq(instance.falsy)
end
end
end