Sha256: f3d677c40649122c0029f796b901728bbb2f5f017df6ba73f312313692770401
Contents?: true
Size: 1.21 KB
Versions: 1
Compression:
Stored size: 1.21 KB
Contents
# encoding: utf-8 describe AbstractMapper::PairRule do let(:rule) { test.new(left, right) } let(:test) { AbstractMapper::Test::Rule = Class.new(described_class) } let(:nodes) { [left, right] } let(:left) { AbstractMapper::Node.new } let(:right) { AbstractMapper::Node.new } describe ".new" do subject { rule } it { is_expected.to be_kind_of AbstractMapper::Rule } it { is_expected.to be_frozen } it "requires second argument" do expect { test.new(left) }.to raise_error(ArgumentError) end end # describe .new describe "#left" do subject { rule.left } it { is_expected.to eql left } end # describe #left describe "#right" do subject { rule.right } it { is_expected.to eql right } end # describe #right describe "#transproc" do before do test.send(:define_method, :optimize?) { left == right } test.send(:define_method, :optimize) { left + right } end let(:array) { [1, 1, 2, 5] } subject { test.transproc[array] } it { is_expected.to eql [4, 5] } end # describe #transproc end # describe AbstractMapper::PairRule
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
abstract_mapper-0.0.2 | spec/unit/abstract_mapper/pair_rule_spec.rb |