38 lines
941 B
Python
38 lines
941 B
Python
|
from buffer import Buffer
|
||
|
from point import Point
|
||
|
|
||
|
def p(x, y):
|
||
|
return Point(x, y)
|
||
|
|
||
|
def setup():
|
||
|
global b
|
||
|
b = Buffer()
|
||
|
b.set_lines(['one two three', 'four five'])
|
||
|
|
||
|
def fail(f):
|
||
|
def new():
|
||
|
try:
|
||
|
f()
|
||
|
except:
|
||
|
return
|
||
|
raise Exception("code did not raise an error")
|
||
|
# set __name__ to accomodate nose's test detection
|
||
|
new.__name__ = f.__name__
|
||
|
return new
|
||
|
|
||
|
def test1(): assert b.make_string() == 'one two three\nfour five'
|
||
|
def test2(): assert b.get_substring(p(0, 0), p(4, 0)) == 'one '
|
||
|
def test3(): assert b.get_substring(p(0, 0), p(13, 0)) == 'one two three'
|
||
|
|
||
|
@fail
|
||
|
def test4(): b.get_substring(p(0, 0), p(14, 0))
|
||
|
|
||
|
def test5(): assert b.get_substring(p(0, 0), p(0, 1)) == 'one two three\n'
|
||
|
def test6(): assert b.get_substring(p(0, 1), p(9, 1)) == 'four five'
|
||
|
|
||
|
@fail
|
||
|
def test7(): b.get_substring(p(0, 1), p(10, 1))
|
||
|
|
||
|
@fail
|
||
|
def test8(): b.get_substring(p(0, 2), p(1, 2))
|