Avoid using subject with structs

This commit is contained in:
Michael Miller 2021-02-13 17:33:52 -07:00
parent 4af23751bc
commit 79d6ad93b3
No known key found for this signature in database
GPG key ID: F9A0C5C65B162436

View file

@ -1,15 +1,15 @@
require "../spec_helper" require "../spec_helper"
Spectator.describe Spectator::Lazy do Spectator.describe Spectator::Lazy do
subject { Spectator::Lazy(Int32).new }
it "returns the value of the block" do it "returns the value of the block" do
expect { subject.get { 42 } }.to eq(42) lazy = Spectator::Lazy(Int32).new
expect { lazy.get { 42 } }.to eq(42)
end end
it "caches the value" do it "caches the value" do
lazy = Spectator::Lazy(Int32).new
count = 0 count = 0
expect { subject.get { count += 1 } }.to change { count }.from(0).to(1) expect { lazy.get { count += 1 } }.to change { count }.from(0).to(1)
expect { subject.get { count += 1 } }.to_not change { count } expect { lazy.get { count += 1 } }.to_not change { count }
end end
end end