require 'spec_helper' require 'mm2ep_depend' describe Mm2ep::Depend::Parser do let(:parser) do Mm2ep::Depend::Parser.new( Mm2ep::Depend::Lexer.new ) end it 'has to do not before or' do line = File .read(testfile('success_priority_not_or.txt')).delete("\n") token = parser.parse(line.chomp) assert_equal('( NOT ( bool:true ) ) OR ( NOT ( bool:true ) )', token.to_s) end it 'has to do not before and' do line = File .read(testfile('success_priority_not_and.txt')).delete("\n") token = parser.parse(line.chomp) assert_equal( '( NOT ( bool:false ) ) AND ( NOT ( bool:false ) )', token.to_s ) end it 'has to do and before or' do line = File .read(testfile('success_priority_or_and.txt')).delete("\n") token = parser.parse(line.chomp) assert_equal( '( bool:false ) OR ( ( bool:true ) AND ( bool:false ) )', token.to_s ) end it 'has to do and before or operators' do line = File .read(testfile('success_priority_or_and_or.txt')).delete("\n") token = parser.parse(line.chomp) assert_equal( '( ( bool:false ) OR ( ( bool:false ) '\ 'AND ( bool:true ) ) ) OR ( bool:true )', token.to_s ) end end