My test file tests/ex48_tests.py
import pytest
from ex48 import lexicon
def test_directions():
#Need to be able to feed in a strings, then check check it to see if it's a direction
assert_equal(lexicon.scan('north'), [('direction', 'north')])
result = lexicon.scan('north south east')
assert_equal(result, [
('direction', 'north'),
('direction', 'south'),
('direction', 'east')
])
def test_verbs():
assert_equal(lexicon.scan("go"), [('verb', 'go')])
result = lexicon.scan("go kill eat")
assert_equal(result, [
('verb', 'go'),
('verb', 'kill'),
('verb', 'eat')
])
def test_noun():
assert_equal(lexicon.scan('bear'), [('noun', 'bear')])
result = lexicon.scan('bear princess')
assert_equal(result, [
('noun','bear'),
('noun','princess')
])
def test_numbers():
assert_equal(lexicon.scan("1234"), [('number', 1234)])
result = lexicon.scan('3 9135435')
assert_equal(result, [
('number', 3),
('number', 9135435)
])
def test_errors():
assert_equal(lexicon.scan('asdased'), [('error', 'asdased')])
result = lexicon.scan('Bear isa princess')
assert_equal(result, [
('noun','bear'),
('error', 'isa'),
('noun','princess')
])
def test_stop():
assert_equal(lexicon.scan('the'), [('stop', 'the')])
result = lexicon.scan('the in of')
assert_equal(result, [
('stop','the'),
('stop', 'in'),
('stop','of')
])
test folder:
$ ls tests
__init__.py
__pycache__
ex48_tests.py
parser_tests.py