def test_dump_constants_aircon(self): """More complex tests for the dump_constants() function.""" ignore = StringIO.StringIO() output = StringIO.StringIO() defs = [] message = analyse.RawIRMessage(200, [ 9008, 4496, 644, 1660, 676, 530, 648, 558, 672, 1636, 646, 1660, 644, 556, 650, 584, 626, 560, 644, 580, 628, 1680, 624, 560, 648, 1662, 644, 582, 648, 536, 674, 530, 646, 580, 628, 560, 670, 532, 646, 562, 644, 556, 672, 536, 648, 1662, 646, 1660, 652, 554, 644, 558, 672, 538, 644, 560, 668, 560, 648, 1638, 668, 536, 644, 1660, 668, 532, 648, 560, 648, 1660, 674, 554, 622, 19990, 646, 580, 624, 1660, 648, 556, 648, 558, 674, 556, 622, 560, 644, 564, 668, 536, 646, 1662, 646, 1658, 672, 534, 648, 558, 644, 562, 648, 1662, 644, 584, 622, 558, 648, 562, 668, 534, 670, 536, 670, 532, 672, 536, 646, 560, 646, 558, 648, 558, 670, 534, 650, 558, 646, 560, 646, 560, 668, 1638, 646, 1662, 646, 1660, 646, 1660, 648 ], ignore) analyse.dump_constants(message, defs, output) self.assertEqual(defs, [ 'const uint16_t kHdrMark = 9008;', 'const uint16_t kBitMark = 650;', 'const uint16_t kHdrSpace = 4496;', 'const uint16_t kOneSpace = 1657;', 'const uint16_t kZeroSpace = 554;', 'const uint16_t kSpaceGap = 19990;' ]) self.assertEqual(output.getvalue(), 'Guessing key value:\n' 'kHdrMark = 9008\n' 'kHdrSpace = 4496\n' 'kBitMark = 650\n' 'kOneSpace = 1657\n' 'kZeroSpace = 554\n' 'kSpaceGap = 19990\n')
def test_display_binary(self): """Test the display_binary() method.""" output = StringIO.StringIO() message = analyse.RawIRMessage(100, [8000, 4000, 500, 500, 500], output, False) self.assertEqual(output.getvalue(), '') message.display_binary("10101010") message.display_binary("0000000000000000") message.display_binary("00010010001101000101011001111000") self.assertEqual(output.getvalue(), '\n' ' Bits: 8\n' ' Hex: 0xAA (MSB first)\n' ' 0x55 (LSB first)\n' ' Dec: 170 (MSB first)\n' ' 85 (LSB first)\n' ' Bin: 0b10101010 (MSB first)\n' ' 0b01010101 (LSB first)\n' '\n' ' Bits: 16\n' ' Hex: 0x0000 (MSB first)\n' ' 0x0000 (LSB first)\n' ' Dec: 0 (MSB first)\n' ' 0 (LSB first)\n' ' Bin: 0b0000000000000000 (MSB first)\n' ' 0b0000000000000000 (LSB first)\n' '\n' ' Bits: 32\n' ' Hex: 0x12345678 (MSB first)\n' ' 0x1E6A2C48 (LSB first)\n' ' Dec: 305419896 (MSB first)\n' ' 510274632 (LSB first)\n' ' Bin: 0b00010010001101000101011001111000 (MSB first)\n' ' 0b00011110011010100010110001001000 (LSB first)\n')
def test_dump_constants_simple(self): """Simple tests for the dump_constants() function.""" ignore = StringIO() output = StringIO() defs = [] message = analyse.RawIRMessage(200, [ 7930, 3952, 494, 1482, 520, 1482, 494, 1508, 494, 520, 494, 1482, 494, 520, 494, 1482, 494, 1482, 494, 3978, 494, 520, 494, 520, 494, 520, 494, 520, 520, 520, 494, 520, 494, 520, 494, 1482, 494 ], ignore) analyse.dump_constants(message, defs, output) self.assertEqual(defs, [ 'const uint16_t kHdrMark = 7930;', 'const uint16_t kBitMark = 496;', 'const uint16_t kHdrSpace = 3965;', 'const uint16_t kOneSpace = 1485;', 'const uint16_t kZeroSpace = 520;' ]) self.assertEqual( output.getvalue(), 'Guessing key value:\n' 'kHdrMark = 7930\n' 'kHdrSpace = 3965\n' 'kBitMark = 496\n' 'kOneSpace = 1485\n' 'kZeroSpace = 520\n')
def test_dump_constants_aircon(self): """More complex tests for the dump_constants() function.""" ignore = StringIO.StringIO() output = StringIO.StringIO() defs = [] message = analyse.RawIRMessage(200, [ 9008, 4496, 644, 1660, 676, 530, 648, 558, 672, 1636, 646, 1660, 644, 556, 650, 584, 626, 560, 644, 580, 628, 1680, 624, 560, 648, 1662, 644, 582, 648, 536, 674, 530, 646, 580, 628, 560, 670, 532, 646, 562, 644, 556, 672, 536, 648, 1662, 646, 1660, 652, 554, 644, 558, 672, 538, 644, 560, 668, 560, 648, 1638, 668, 536, 644, 1660, 668, 532, 648, 560, 648, 1660, 674, 554, 622, 19990, 646, 580, 624, 1660, 648, 556, 648, 558, 674, 556, 622, 560, 644, 564, 668, 536, 646, 1662, 646, 1658, 672, 534, 648, 558, 644, 562, 648, 1662, 644, 584, 622, 558, 648, 562, 668, 534, 670, 536, 670, 532, 672, 536, 646, 560, 646, 558, 648, 558, 670, 534, 650, 558, 646, 560, 646, 560, 668, 1638, 646, 1662, 646, 1660, 646, 1660, 648 ], ignore) analyse.dump_constants(message, defs, output) self.assertEqual(defs, [ '#define HDR_MARK 9008U', '#define BIT_MARK 676U', '#define HDR_SPACE 4496U', '#define ONE_SPACE 1680U', '#define ZERO_SPACE 584U', '#define SPACE_GAP = 19990U' ]) self.assertEqual( output.getvalue(), 'Guessing key value:\n' 'HDR_MARK = 9008\n' 'HDR_SPACE = 4496\n' 'BIT_MARK = 676\n' 'ONE_SPACE = 1680\n' 'ZERO_SPACE = 584\n' 'SPACE_GAP = 19990\n')
def test_reduce_list(self): """Tests for the reduce_list method.""" ignore = StringIO.StringIO() message = analyse.RawIRMessage(200, [ 7930, 3952, 494, 1482, 520, 1482, 494, 1508, 494, 520, 494, 1482, 494, 520, 494, 1482, 494, 1482, 494, 3978, 494, 520, 494, 520, 494, 520, 494, 520, 520, 520, 494, 520, 494, 520, 494, 1482, 494 ], ignore) test_space_data = [4496, 1660, 530, 558, 1636, 1660, 556] result_list, result_dict = message.reduce_list(test_space_data) self.assertEqual([4496, 1660, 558], result_list) self.assertEqual({ 558: [558, 556, 530], 1660: [1660, 1660, 1636], 4496: [4496] }, result_dict)
def test_dump_constants_simple(self): """Simple tests for the dump_constants() function.""" ignore = StringIO.StringIO() output = StringIO.StringIO() defs = [] message = analyse.RawIRMessage(200, [ 7930, 3952, 494, 1482, 520, 1482, 494, 1508, 494, 520, 494, 1482, 494, 520, 494, 1482, 494, 1482, 494, 3978, 494, 520, 494, 520, 494, 520, 494, 520, 520, 520, 494, 520, 494, 520, 494, 1482, 494 ], ignore) analyse.dump_constants(message, defs, output) self.assertEqual(defs, [ '#define HDR_MARK 7930U', '#define BIT_MARK 520U', '#define HDR_SPACE 3978U', '#define ONE_SPACE 1508U', '#define ZERO_SPACE 520U' ]) self.assertEqual(output.getvalue(), 'Guessing key value:\n' 'HDR_MARK = 7930\n' 'HDR_SPACE = 3978\n' 'BIT_MARK = 520\n' 'ONE_SPACE = 1508\n' 'ZERO_SPACE = 520\n')