def test_move_up(self): """ move_up should write to file. """ f = TestFile() move_up(file=f) self.assertEqual( str(f), str(move.up()), msg='move_up failed to write to file.' )
def test_repeat(self): """ Control.repeat() should repeat the last code. """ s = ''.join(( str(move.up()), str(move.down()), str(move.down()), str(move.down()), )) ctl = Control().move_up().move_down().repeat(3) self.assertEqual( s, str(ctl), msg='Control.repeat produced an unexpected result.', )
def test_last_code(self): """ last_code() should return the last escape code appended. """ c = Control('datadata').move_up() self.assertEqual( c.last_code(), str(move.up()), msg='Failed to return last escape code.' ) blank = Control() self.assertEqual( blank.last_code(), '', msg='Empty Control should not have a last code.' )
def test_repeat_all(self): """ Control.repeat() should be like str(Control()) * count. """ count = 3 s = ''.join(( str(move.up()), str(move.down()), str(move.down()), str(move.down()), )) * count ctl = Control().move_up().move_down().repeat(3) self.assertEqual( s, str(ctl.repeat_all(count)), msg='Control.repeat_all produced an unexpected result.', )
def test_escape_code_methods(self): """ methods appending escape codes should be callable without error. """ c = ( Control() .cursor_hide() .cursor_show() .erase_display() .erase_line() .move_back() .move_column() .move_down() .move_forward() .move_next() .move_pos() .move_prev() .move_return() .move_up() .pos_restore() .pos_save() .scroll_down() .scroll_up() ) codes = ( cursor.hide(), cursor.show(), erase.display(), erase.line(), move.back(), move.column(), move.down(), move.forward(), move.next(), move.pos(), move.prev(), move.carriage_return(), move.up(), position.restore(), position.save(), scroll.down(), scroll.up(), ) self.assertEqual( str(c), ''.join(str(x) for x in codes), msg='Failed to create escape codes from methods.' )
def test_repeat(self): """ Control.repeat() should repeat the last code. """ s = ''.join(( str(move.up()), str(move.down()), str(move.down()), str(move.down()), )) ctl = Control().move_up().move_down().repeat(3) self.assertEqual( s, str(ctl), msg='Control.repeat produced an unexpected result.', ) # Non-integer count should raise. with self.assertRaises(TypeError): Control().repeat(count='BAD')
def test_repeat_all(self): """ Control.repeat() should be like str(Control()) * count. """ count = 3 s = ''.join(( str(move.up()), str(move.down()), str(move.down()), str(move.down()), )) * count ctl = Control().move_up().move_down().repeat(3) self.assertEqual( s, str(ctl.repeat_all(count)), msg='Control.repeat_all produced an unexpected result.', ) # Non-integer count should raise. with self.assertRaises(TypeError): Control().repeat_all(count='BAD')