Sha256: 5f20daad93841ca65d1bc2a11a2ba632937c83bf8a9453648c61ef8fc02e0993
Contents?: true
Size: 1.01 KB
Versions: 5
Compression:
Stored size: 1.01 KB
Contents
#encoding: utf-8 require 'rspec' require 'asciimath' require_relative 'ast' RSpec.configure do |c| c.include ::AsciiMath::ASTHelper end describe 'AsciiMath::Parser', :variant => :ast do it "should support custom symbols" do my_tokens_table = AsciiMath::SymbolTableBuilder.new AsciiMath::Parser.add_default_parser_symbols(my_tokens_table) my_tokens_table.add('mysymbol', :mysymbol, :symbol) parsed = AsciiMath::parse("a + mysymbol + b", my_tokens_table.build) expect(parsed.ast).to eq(seq(identifier('a'), symbol('+'), ::AsciiMath::AST::Symbol.new(:mysymbol, 'mysymbol'), symbol('+'), identifier('b'))) end it "should support replacing standard symbols" do my_tokens_table = AsciiMath::SymbolTableBuilder.new AsciiMath::Parser.add_default_parser_symbols(my_tokens_table) my_tokens_table.add('+', :foo, :symbol) parsed = AsciiMath::parse("a + b", my_tokens_table.build) expect(parsed.ast).to eq(seq(identifier('a'), ::AsciiMath::AST::Symbol.new(:foo, '+'), identifier('b'))) end end
Version data entries
5 entries across 5 versions & 2 rubygems