コード例 #1
0
    def test_rect_draw(self):
        ascii_canvas = AsciiCanvas(5, 5)
        ascii_canvas.add_rect(0, 0, 5, 5)
        canvas_with_rect_str = \
            line('ooooo') + \
            line('o   o') + \
            line('o   o') + \
            line('o   o') + \
            last('ooooo')
        self.assertEqual(ascii_canvas.get_canvas_as_str(),
                         canvas_with_rect_str, 'Incorrect canvas with rect')

        ascii_canvas = AsciiCanvas(5, 5)
        ascii_canvas.add_rect(0,
                              0,
                              5,
                              5,
                              fill_style=Style('.'),
                              outline_style=Style('#'))
        canvas_with_rect_str = \
            line('#####') + \
            line('#...#') + \
            line('#...#') + \
            line('#...#') + \
            last('#####')
        self.assertEqual(ascii_canvas.get_canvas_as_str(),
                         canvas_with_rect_str, 'Incorrect canvas with rect')

        ascii_canvas = AsciiCanvas(5, 5)
        ascii_canvas.add_rect(4, 4, 1, 1)
        canvas_with_rect_str = \
            line('     ') + \
            line('     ') + \
            line('     ') + \
            line('     ') + \
            last('    o')
        self.assertEqual(ascii_canvas.get_canvas_as_str(),
                         canvas_with_rect_str, 'Incorrect canvas with rect')

        ascii_canvas = AsciiCanvas(2, 2)
        ascii_canvas.add_rect(1, 1, 0, 0)
        canvas_with_rect_str = \
            line('  ') + \
            last('  ')
        self.assertEqual(ascii_canvas.get_canvas_as_str(),
                         canvas_with_rect_str, 'Incorrect canvas with rect')

        ascii_canvas = AsciiCanvas(2, 2)
        ascii_canvas.add_rect(1, 1, -1, -1)
        canvas_with_rect_str = \
            line('  ') + \
            last('  ')
        self.assertEqual(ascii_canvas.get_canvas_as_str(),
                         canvas_with_rect_str, 'Incorrect canvas with rect')
コード例 #2
0
ファイル: tests.py プロジェクト: delimitry/ascii_canvas
    def test_draw_order(self):
        ascii_canvas = AsciiCanvas(3, 3)
        ascii_canvas.add_text(0, 0, 'TE')
        ascii_canvas.add_text(0, 1, 'XT')
        canvas_str = \
            line('TE ') + \
            line('XT ') + \
            last('   ')
        self.assertEqual(ascii_canvas.get_canvas_as_str(), canvas_str, 'Incorrect canvas with text')

        # must overlap the text
        ascii_canvas.add_rect(0, 0, 3, 3)
        canvas_str = \
            line('ooo') + \
            line('o o') + \
            last('ooo')
        self.assertEqual(ascii_canvas.get_canvas_as_str(), canvas_str, 'Incorrect canvas with rect')
コード例 #3
0
ファイル: tests.py プロジェクト: delimitry/ascii_canvas
    def test_rect_draw(self):
        ascii_canvas = AsciiCanvas(5, 5)
        ascii_canvas.add_rect(0, 0, 5, 5)
        canvas_with_rect_str = \
            line('ooooo') + \
            line('o   o') + \
            line('o   o') + \
            line('o   o') + \
            last('ooooo')
        self.assertEqual(ascii_canvas.get_canvas_as_str(), canvas_with_rect_str, 'Incorrect canvas with rect')

        ascii_canvas = AsciiCanvas(5, 5)
        ascii_canvas.add_rect(0, 0, 5, 5, fill_style=Style('.'), outline_style=Style('#'))
        canvas_with_rect_str = \
            line('#####') + \
            line('#...#') + \
            line('#...#') + \
            line('#...#') + \
            last('#####')
        self.assertEqual(ascii_canvas.get_canvas_as_str(), canvas_with_rect_str, 'Incorrect canvas with rect')

        ascii_canvas = AsciiCanvas(5, 5)
        ascii_canvas.add_rect(4, 4, 1, 1)
        canvas_with_rect_str = \
            line('     ') + \
            line('     ') + \
            line('     ') + \
            line('     ') + \
            last('    o')
        self.assertEqual(ascii_canvas.get_canvas_as_str(), canvas_with_rect_str, 'Incorrect canvas with rect')

        ascii_canvas = AsciiCanvas(2, 2)
        ascii_canvas.add_rect(1, 1, 0, 0)
        canvas_with_rect_str = \
            line('  ') + \
            last('  ')
        self.assertEqual(ascii_canvas.get_canvas_as_str(), canvas_with_rect_str, 'Incorrect canvas with rect')

        ascii_canvas = AsciiCanvas(2, 2)
        ascii_canvas.add_rect(1, 1, -1, -1)
        canvas_with_rect_str = \
            line('  ') + \
            last('  ')
        self.assertEqual(ascii_canvas.get_canvas_as_str(), canvas_with_rect_str, 'Incorrect canvas with rect')
コード例 #4
0
    def test_draw_order(self):
        ascii_canvas = AsciiCanvas(3, 3)
        ascii_canvas.add_text(0, 0, 'TE')
        ascii_canvas.add_text(0, 1, 'XT')
        canvas_str = \
            line('TE ') + \
            line('XT ') + \
            last('   ')
        self.assertEqual(ascii_canvas.get_canvas_as_str(), canvas_str,
                         'Incorrect canvas with text')

        # must overlap the text
        ascii_canvas.add_rect(0, 0, 3, 3)
        canvas_str = \
            line('ooo') + \
            line('o o') + \
            last('ooo')
        self.assertEqual(ascii_canvas.get_canvas_as_str(), canvas_str,
                         'Incorrect canvas with rect')