示例#1
0
    def test_set_attribute(self):
        # Act
        orders = list(parse_orders(bytes.fromhex('28 41 f2')))

        # Assert
        self.assertEqual(orders[0][0], Order.SA)

        self.assertIsInstance(orders[0][1][0], HighlightExtendedAttribute)
        self.assertTrue(orders[0][1][0].reverse)
示例#2
0
    def test_start_field(self):
        # Act
        orders = list(parse_orders(bytes.fromhex('1d f8')))

        # Assert
        self.assertEqual(orders[0][0], Order.SF)

        self.assertIsInstance(orders[0][1][0], Attribute)
        self.assertEqual(orders[0][1][0].value, 0xf8)
示例#3
0
    def test(self):
        # Act
        orders = list(parse_orders(bytes.fromhex('11 4b f0 1d f8 c8 c5 d3 d3 d6 40 e6 d6 d9 d3 c4')))

        # Assert
        self.assertEqual(orders[0], (Order.SBA, [752]))

        self.assertEqual(orders[1][0], Order.SF)

        self.assertIsInstance(orders[1][1][0], Attribute)
        self.assertEqual(orders[1][1][0].value, 0xf8)

        self.assertEqual(orders[2], (None, bytes.fromhex('c8 c5 d3 d3 d6 40 e6 d6 d9 d3 c4')))
示例#4
0
    def test_modify_field(self):
        # Act
        orders = list(parse_orders(bytes.fromhex('2c 02 c0 60 42 f1')))

        # Assert
        self.assertEqual(orders[0][0], Order.MF)

        self.assertIsInstance(orders[0][1][0], Attribute)
        self.assertEqual(orders[0][1][0].value, 0x60)

        extended_attributes = orders[0][1][1]

        self.assertEqual(len(extended_attributes), 1)

        self.assertIsInstance(extended_attributes[0],
                              ForegroundColorExtendedAttribute)
        self.assertEqual(extended_attributes[0].color, 0xf1)
示例#5
0
 def test_repeat_to_address_graphic_escape(self):
     self.assertEqual(list(parse_orders(bytes.fromhex('3c 4b f0 08 ad'))),
                      [(Order.RA, [752, 0xad, True])])
示例#6
0
 def test_repeat_to_address(self):
     self.assertEqual(list(parse_orders(bytes.fromhex('3c 4b f0 c1'))),
                      [(Order.RA, [752, 0xc1, False])])
示例#7
0
 def test_insert_cursor(self):
     self.assertEqual(list(parse_orders(bytes.fromhex('13'))),
                      [(Order.IC, None)])
示例#8
0
 def test_erase_unprotected_to_address(self):
     self.assertEqual(list(parse_orders(bytes.fromhex('12 4b f0'))),
                      [(Order.EUA, [752])])
示例#9
0
 def test_set_buffer_address(self):
     self.assertEqual(list(parse_orders(bytes.fromhex('11 4b f0'))),
                      [(Order.SBA, [752])])
示例#10
0
 def test_graphic_escape(self):
     self.assertEqual(list(parse_orders(bytes.fromhex('08 ad'))),
                      [(Order.GE, [0xad])])
示例#11
0
 def test_program_tab(self):
     self.assertEqual(list(parse_orders(bytes.fromhex('05'))),
                      [(Order.PT, None)])
示例#12
0
 def test_modify_field(self):
     with self.assertRaises(NotImplementedError):
         list(parse_orders(bytes.fromhex('2c')))
示例#13
0
 def test_graphic_escape(self):
     with self.assertRaises(NotImplementedError):
         list(parse_orders(bytes.fromhex('08')))
示例#14
0
 def test_start_field_extended(self):
     with self.assertRaises(NotImplementedError):
         list(parse_orders(bytes.fromhex('29')))
示例#15
0
 def test_set_attribute(self):
     with self.assertRaises(NotImplementedError):
         list(parse_orders(bytes.fromhex('28')))