Skip to content

Commit

Permalink
Started tests for Lexer
Browse files Browse the repository at this point in the history
  • Loading branch information
ppaez committed Jun 17, 2012
1 parent d68a6f3 commit cacbb2d
Showing 1 changed file with 48 additions and 0 deletions.
48 changes: 48 additions & 0 deletions tests.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
import unittest

class Lexer( unittest.TestCase):

def test_instance(self):
from arithmetic import Lexer
lexer = Lexer( '5x3 ' )
self.assertEqual( lexer.text, '5x3 ' )
self.assertEqual( lexer.offset, 0 )

def test_gettoken_null_text(self):
from arithmetic import Lexer
lexer = Lexer( '' )
lexer.gettoken()
self.assertEqual( lexer.value, None )
self.assertEqual( lexer.type, '' )

def test_gettoken_f(self):
from arithmetic import Lexer
lexer = Lexer( ' 5 ' )
lexer.gettoken()
self.assertEqual( lexer.value, '5' )
self.assertEqual( lexer.type, 'f' )

def test_gettoken_n(self):
from arithmetic import Lexer
lexer = Lexer( ' name ' )
lexer.gettoken()
self.assertEqual( lexer.value, 'name' )
self.assertEqual( lexer.type, 'n' )

def test_gettoken_power(self):
from arithmetic import Lexer
lexer = Lexer( ' ** ' )
lexer.gettoken()
self.assertEqual( lexer.value, '**' )
self.assertEqual( lexer.type, 'o' )

def test_gettoken_plus(self):
from arithmetic import Lexer
lexer = Lexer( ' + ' )
lexer.gettoken()
self.assertEqual( lexer.value, '+' )
self.assertEqual( lexer.type, 'o' )

if __name__ == '__main__':
unittest.main()

0 comments on commit cacbb2d

Please sign in to comment.