Sha256: ba24e36dc8b38bfbf58a0104227c21aa79efc8b5ffc5f45f648801dc0025ed18
Contents?: true
Size: 833 Bytes
Versions: 1
Compression:
Stored size: 833 Bytes
Contents
require 'spec_helper' require 'dentaku/ast/combinators' require 'dentaku/token' describe Dentaku::AST::And do let(:t) { Dentaku::AST::Logical.new Dentaku::Token.new(:logical, true) } let(:f) { Dentaku::AST::Logical.new Dentaku::Token.new(:logical, false) } let(:five) { Dentaku::AST::Numeric.new Dentaku::Token.new(:numeric, 5) } it 'performs logical AND' do node = described_class.new(t, f) expect(node.value).to eq false end it 'requires logical operands' do expect { described_class.new(t, five) }.to raise_error expression = Dentaku::AST::LessThanOrEqual.new(five, five) expect { described_class.new(t, expression) }.not_to raise_error expression = Dentaku::AST::Or.new(t, f) expect { described_class.new(t, expression) }.not_to raise_error end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
dentaku-2.0.2 | spec/ast/and_spec.rb |