Sha256: 5170c2376bff692052dc65ce4fd9865c783ce5242a9668662c55d2538cc8764f
Contents?: true
Size: 781 Bytes
Versions: 1
Compression:
Stored size: 781 Bytes
Contents
# frozen_string_literal: true RSpec.describe Fear::Option::PatternMatch do context "Some" do let(:matcher) do described_class.new do |m| m.some(:even?.to_proc) { |x| "#{x} is even" } m.some(:odd?.to_proc) { |x| "#{x} is odd" } end end it do expect(matcher.(Fear.some(4))).to eq("4 is even") expect(matcher.(Fear.some(3))).to eq("3 is odd") expect do matcher.(Fear.none) end.to raise_error(Fear::MatchError) end end context "None" do let(:matcher) do described_class.new do |m| m.none { "nil" } end end it do expect(matcher.(Fear.none)).to eq("nil") expect do matcher.(Fear.some(3)) end.to raise_error(Fear::MatchError) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fear-3.0.0 | spec/fear/option/pattern_match_spec.rb |