示例#1
0
 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')
示例#2
0
 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')
示例#5
0
  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)
示例#6
0
 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')