spec/fear/extractor/identified_matcher_spec.rb in fear-1.0.0 vs spec/fear/extractor/identified_matcher_spec.rb in fear-1.1.0
- old
+ new
@@ -1,47 +1,49 @@
-RSpec.describe 'Fear::Extractor::IdentifiedMatcher' do
+# frozen_string_literal: true
+
+RSpec.describe "Fear::Extractor::IdentifiedMatcher" do
let(:parser) { Fear::Extractor::GrammarParser.new }
let(:matcher) { parser.parse(pattern).to_matcher }
- describe '#defined_at?' do
+ describe "#defined_at?" do
subject { matcher }
- let(:pattern) { 'array @ [1, *tail]' }
+ let(:pattern) { "array @ [1, *tail]" }
it { is_expected.to be_defined_at([1, 2]) }
- it { is_expected.not_to be_defined_at('foo') }
+ it { is_expected.not_to be_defined_at("foo") }
it { is_expected.not_to be_defined_at([2, 1]) }
end
- describe '#call' do
- subject { matcher.call(other) }
+ describe "#call" do
+ subject { matcher.(other) }
- context 'defined' do
+ context "defined" do
let(:other) { [1, 2] }
- let(:pattern) { 'array @ [1, *tail]' }
+ let(:pattern) { "array @ [1, *tail]" }
it { is_expected.to eq(array: [1, 2], tail: [2]) }
end
end
- describe '#failure_reason' do
+ describe "#failure_reason" do
subject { matcher.failure_reason(other) }
- let(:pattern) { 'array @ [1, *tail]' }
+ let(:pattern) { "array @ [1, *tail]" }
- context 'match integer' do
+ context "match integer" do
let(:other) { [1, 2] }
it { is_expected.to eq(Fear.none) }
end
- context 'does not match float' do
+ context "does not match float" do
let(:other) { [2, 2] }
- it { is_expected.to eq(Fear.some(<<-ERROR.strip)) }
-Expected `2` to match:
-array @ [1, *tail]
-~~~~~~~~~^
+ it { is_expected.to eq(Fear.some(<<~ERROR.strip)) }
+ Expected `2` to match:
+ array @ [1, *tail]
+ ~~~~~~~~~^
ERROR
end
end
end