Ejemplo n.º 1
0
 def testTimeout(self):
     # the test will have to be re-writen if the scenario changes
     self.assertEqual(28, len(GOOD_SCENARIO))
     for i in range(len(GOOD_SCENARIO) + 1):
         d = MyDongleWithTimeout(GOOD_SCENARIO, i)
         c = FitbitClient(d)
         if i < 1:
             self.assertFalse(c.disconnect(), i)
             continue
         self.assertTrue(c.disconnect())
         if i < 4:
             self.assertFalse(c.getDongleInfo(), i)
             continue
         self.assertTrue(c.getDongleInfo())
         ts = [t for t in c.discover(MyUUID())]
         if i < 6:
             self.assertEqual([], ts, i)
             continue
         self.assertEqual(1, len(ts), i)
         self.assertEqual(ts[0].id, [0, 0, 42, 0, 0, 0])
         if i < 12:
             self.assertFalse(c.establishLink(ts[0]), i)
             continue
         self.assertTrue(c.establishLink(ts[0]), i)
         if i < 13:
             self.assertFalse(c.toggleTxPipe(True), i)
             continue
         self.assertTrue(c.toggleTxPipe(True))
         if i < 15:
             self.assertFalse(c.initializeAirlink(ts[0]))
             continue
         self.assertTrue(c.initializeAirlink(ts[0]))
         if i < 18:
             self.assertEqual(None, c.getDump())
             continue
         dump = c.getDump()
         self.assertFalse(dump is None)
         self.assertEqual(dump.data, [0x26, 2, 0, 0, 0, 0, 0])
         if i < 22:
             self.assertFalse(
                 c.uploadResponse((0x26, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
                                   0, 0, 0, 0, 0, 0, 0, 0)))
             continue
         self.assertTrue(
             c.uploadResponse((0x26, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
                               0, 0, 0, 0, 0, 0, 0)))
         if i < 23:
             self.assertFalse(c.terminateAirlink())
             continue
         self.assertTrue(c.terminateAirlink())
         if i < 24:
             self.assertFalse(c.toggleTxPipe(False))
             continue
         self.assertTrue(c.toggleTxPipe(False))
         if i < 28:
             self.assertFalse(c.ceaseLink())
             continue
         self.assertTrue(c.ceaseLink())
         self.assertEqual(len(GOOD_SCENARIO), i)
 def testTimeout(self):
     # the test will have to be re-writen if the scenario changes
     self.assertEqual(28, len(GOOD_SCENARIO))
     for i in range(len(GOOD_SCENARIO) + 1):
         d = MyDongleWithTimeout(GOOD_SCENARIO, i)
         c = FitbitClient(d)
         if i < 1:
             self.assertFalse(c.disconnect(), i)
             continue
         self.assertTrue(c.disconnect())
         if i < 4:
             self.assertFalse(c.getDongleInfo(), i)
             continue
         self.assertTrue(c.getDongleInfo())
         ts = [t for t in c.discover(MyUUID())]
         if i < 6:
             self.assertEqual([], ts, i)
             continue
         self.assertEqual(1, len(ts), i)
         self.assertEqual(ts[0].id, [0,0,42,0,0,0])
         if i < 12:
             self.assertFalse(c.establishLink(ts[0]), i)
             continue
         self.assertTrue(c.establishLink(ts[0]), i)
         if i < 13:
             self.assertFalse(c.toggleTxPipe(True), i)
             continue
         self.assertTrue(c.toggleTxPipe(True))
         if i < 15:
             self.assertFalse(c.initializeAirlink(ts[0]))
             continue
         self.assertTrue(c.initializeAirlink(ts[0]))
         if i < 18:
             self.assertEqual(None, c.getDump())
             continue
         dump = c.getDump()
         self.assertFalse(dump is None)
         self.assertEqual(dump.data, [0x26, 2, 0,0,0,0,0])
         if i < 22:
             self.assertFalse(c.uploadResponse((0x26, 2, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)))
             continue
         self.assertTrue(c.uploadResponse((0x26, 2, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)))
         if i < 23:
             self.assertFalse(c.terminateAirlink())
             continue
         self.assertTrue(c.terminateAirlink())
         if i < 24:
             self.assertFalse(c.toggleTxPipe(False))
             continue
         self.assertTrue(c.toggleTxPipe(False))
         if i < 28:
             self.assertFalse(c.ceaseLink())
             continue
         self.assertTrue(c.ceaseLink())
         self.assertEqual(len(GOOD_SCENARIO), i)
Ejemplo n.º 3
0
 def testIssue136(self):
     d = MyDongle([
         (0x20, 1, 0x54, 0x65, 0x72, 0x6D, 0x69, 0x6E, 0x61, 0x74, 0x65,
          0x4C, 0x69, 0x6E, 0x6B, 0),
     ])
     c = FitbitClient(d)
     t = MyTracker()
     self.assertFalse(c.getDongleInfo())
Ejemplo n.º 4
0
 def testIssue136(self):
     global FitbitClient
     FitbitClient = type('FitbitClient', (MyDongle, ),
                         dict(FitbitClient.__dict__))
     c = FitbitClient([
         (0x20, 1, 0x54, 0x65, 0x72, 0x6D, 0x69, 0x6E, 0x61, 0x74, 0x65,
          0x4C, 0x69, 0x6E, 0x6B, 0),
     ])
     self.assertFalse(c.getDongleInfo())
Ejemplo n.º 5
0
 def testOk(self):
     d = MyDongle([
         (0x16, 8, 2, 5, 0x71, 0x59, 0x46, 0x16, 0x4A, 0x54, 0x74, 4, 0,
          0x20, 0, 0, 0xFF, 0xE7, 1, 0, 2, 0),
     ])
     c = FitbitClient(d)
     t = MyTracker()
     self.assertTrue(c.getDongleInfo())
     self.assertEqual(d.v, (2, 5))
Ejemplo n.º 6
0
 def testOk(self):
     global FitbitClient
     FitbitClient = type('FitbitClient', (MyDongle, ),
                         dict(FitbitClient.__dict__))
     c = FitbitClient([
         (0x16, 8, 2, 5, 0x71, 0x59, 0x46, 0x16, 0x4A, 0x54, 0x74, 4, 0,
          0x20, 0, 0, 0xFF, 0xE7, 1, 0, 2, 0),
     ])
     self.assertTrue(c.getDongleInfo())
     self.assertEqual(c.v, (2, 5))
Ejemplo n.º 7
0
 def testNewerDongle75(self):
     global FitbitClient
     FitbitClient = type('FitbitClient', (MyDongle, ),
                         dict(FitbitClient.__dict__))
     c = FitbitClient([
         (0x16, 0x08, 0x07, 0x05, 0xA4, 0xA6, 0x69, 0xF3, 0x7B, 0x98, 0x74,
          0x04, 0x00, 0x20, 0x00, 0x00, 0xFF, 0xE7, 0x01, 0x00, 0x02, 0x00)
     ])
     self.assertTrue(c.getDongleInfo())
     self.assertEqual(c.v, (7, 5))
     self.assertEqual(c.flashEraseTime, 1140)
     self.assertEqual(c.firmwareStartAddress, 8192)
     self.assertEqual(c.firmwareEndAddress, 124927)
     self.assertEqual(c.ccIC, 2)
Ejemplo n.º 8
0
 def testSurgeDongle(self):
     global FitbitClient
     FitbitClient = type('FitbitClient', (MyDongle, ),
                         dict(FitbitClient.__dict__))
     c = FitbitClient([
         (0x16, 0x08, 0x02, 0x05, 0x05, 0xDF, 0x5E, 0x5E, 0xB8, 0xF4, 0x74,
          0x04, 0x00, 0x20, 0x00, 0x00, 0xFF, 0xE7, 0x01, 0x00, 0x02, 0),
     ])
     self.assertTrue(c.getDongleInfo())
     self.assertEqual(c.v, (2, 5))
     self.assertEqual(c.flashEraseTime, 1140)
     self.assertEqual(c.firmwareStartAddress, 8192)
     self.assertEqual(c.firmwareEndAddress, 124927)
     self.assertEqual(c.ccIC, 2)
Ejemplo n.º 9
0
 def testOkOld(self):
     global FitbitClient
     FitbitClient = type('FitbitClient', (MyDongle, ),
                         dict(FitbitClient.__dict__))
     c = FitbitClient([
         (0x15, 8, 1, 1, 0x6F, 0x7B, 0xAD, 0x29, 0x6A, 0xBC, 0x74, 0x09, 0,
          0x20, 0, 0, 0xFF, 0xE7, 3, 0, 1),
     ])
     self.assertTrue(c.getDongleInfo())
     self.assertEqual(c.v, (1, 1))
     self.assertEqual(c.flashEraseTime, 2420)
     self.assertEqual(c.firmwareStartAddress, 8192)
     self.assertEqual(c.firmwareEndAddress, 255999)
     self.assertEqual(c.ccIC, 1)
 def testOk(self):
     d = MyDongle(GOOD_SCENARIO)
     c = FitbitClient(d)
     self.assertTrue(c.disconnect())
     self.assertTrue(c.getDongleInfo())
     ts = [t for t in c.discover(MyUUID())]
     self.assertEqual(1, len(ts))
     self.assertEqual(ts[0].id, [0,0,42,0,0,0])
     self.assertTrue(c.establishLink(ts[0]))
     self.assertTrue(c.toggleTxPipe(True))
     self.assertTrue(c.initializeAirlink(ts[0]))
     dump = c.getDump()
     self.assertFalse(dump is None)
     self.assertEqual(dump.data, [0x26, 2, 0,0,0,0,0])
     self.assertTrue(c.uploadResponse((0x26, 2, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)))
     self.assertTrue(c.terminateAirlink())
     self.assertTrue(c.toggleTxPipe(False))
     self.assertTrue(c.ceaseLink())
Ejemplo n.º 11
0
 def testOk(self):
     d = MyDongle(GOOD_SCENARIO)
     c = FitbitClient(d)
     self.assertTrue(c.disconnect())
     self.assertTrue(c.getDongleInfo())
     ts = [t for t in c.discover(MyUUID())]
     self.assertEqual(1, len(ts))
     self.assertEqual(ts[0].id, [0, 0, 42, 0, 0, 0])
     self.assertTrue(c.establishLink(ts[0]))
     self.assertTrue(c.toggleTxPipe(True))
     self.assertTrue(c.initializeAirlink(ts[0]))
     dump = c.getDump()
     self.assertFalse(dump is None)
     self.assertEqual(dump.data, [0x26, 2, 0, 0, 0, 0, 0])
     self.assertTrue(
         c.uploadResponse((0x26, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
                           0, 0, 0, 0, 0, 0)))
     self.assertTrue(c.terminateAirlink())
     self.assertTrue(c.toggleTxPipe(False))
     self.assertTrue(c.ceaseLink())
Ejemplo n.º 12
0
 def testOk(self):
     global FitbitClient
     FitbitClient = type('FitbitClient', (MyDongle, ),
                         dict(FitbitClient.__dict__))
     c = FitbitClient(GOOD_SCENARIO)
     self.assertTrue(c.disconnect())
     self.assertTrue(c.getDongleInfo())
     ts = [t for t in c.discover(MyUUID())]
     self.assertEqual(1, len(ts))
     self.assertEqual(ts[0].id, bytearray([0, 0, 42, 0, 0, 0]))
     self.assertTrue(c.establishLink(ts[0]))
     self.assertTrue(c.toggleTxPipe(True))
     self.assertTrue(c.initializeAirlink(ts[0]))
     dump = c.getDump()
     self.assertFalse(dump is None)
     self.assertEqual(dump.data, bytearray([0x26, 2, 0, 0, 0, 0, 0]))
     self.assertTrue(
         c.uploadResponse((0x26, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
                           0, 0, 0, 0, 0, 0)))
     self.assertTrue(c.terminateAirlink())
     self.assertTrue(c.toggleTxPipe(False))
     self.assertTrue(c.ceaseLink())
 def testOk(self):
     d = MyDongle([(0x16, 8, 2, 5, 0x71, 0x59, 0x46, 0x16, 0x4A, 0x54, 0x74, 4, 0, 0x20, 0, 0, 0xFF, 0xE7, 1, 0, 2, 0),])
     c = FitbitClient(d)
     t = MyTracker()
     self.assertTrue(c.getDongleInfo())
     self.assertEqual(d.v, (2,5))
 def testIssue136(self):
     d = MyDongle([(0x20, 1, 0x54, 0x65, 0x72, 0x6D, 0x69, 0x6E, 0x61, 0x74, 0x65, 0x4C, 0x69, 0x6E, 0x6B, 0),])
     c = FitbitClient(d)
     t = MyTracker()
     self.assertFalse(c.getDongleInfo())