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)
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())
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())
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 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))
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)
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)
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())
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())
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())