Sha256: 3591a4a8b131ddacc0d2adbf1317c322afcf758c7bdcf524a1c6387e25089cfe
Contents?: true
Size: 1.42 KB
Versions: 3
Compression:
Stored size: 1.42 KB
Contents
require 'spec_helper' describe NQL::SyntaxParser, '-> Coordination' do let(:parser) { NQL::SyntaxParser.new } it 'And' do tree = parser.parse('var1 = value1 & var2 = value2') tree.left.text_value.strip.should eq 'var1 = value1' tree.coordinator.text_value.should eq '&' tree.right.text_value.strip.should eq 'var2 = value2' end it 'Or' do tree = parser.parse('var1 = value1 | var2 = value2') tree.left.text_value.strip.should eq 'var1 = value1' tree.coordinator.text_value.should eq '|' tree.right.text_value.strip.should eq 'var2 = value2' end it 'And then Or' do tree = parser.parse('var1 = value1 & var2 = value2 | var3 = value3') tree.left.text_value.strip.should eq 'var1 = value1' tree.coordinator.text_value.should eq '&' tree.right.left.text_value.strip.should eq 'var2 = value2' tree.right.coordinator.text_value.strip.should eq '|' tree.right.right.text_value.strip.should eq 'var3 = value3' end it 'With parentheses' do tree = parser.parse('(var1 = value1 & var2 = value2) | var3 = value3') tree.left.expression.left.text_value.strip.should eq 'var1 = value1' tree.left.expression.coordinator.text_value.should eq '&' tree.left.expression.right.text_value.strip.should eq 'var2 = value2' tree.coordinator.text_value.strip.should eq '|' tree.right.text_value.strip.should eq 'var3 = value3' end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
nql-0.0.3 | spec/coordination_parser_spec.rb |
nql-0.0.2 | spec/coordination_parser_spec.rb |
nql-0.0.1 | spec/coordination_parser_spec.rb |