diff --git a/sys-test/__init__.py b/sys_test/__init__.py similarity index 100% rename from sys-test/__init__.py rename to sys_test/__init__.py diff --git a/sys-test/swarm_test_rig/__init__.py b/sys_test/swarm_test_rig/__init__.py similarity index 100% rename from sys-test/swarm_test_rig/__init__.py rename to sys_test/swarm_test_rig/__init__.py diff --git a/sys-test/swarm_test_rig/cload_all_nrf.sh b/sys_test/swarm_test_rig/cload_all_nrf.sh similarity index 100% rename from sys-test/swarm_test_rig/cload_all_nrf.sh rename to sys_test/swarm_test_rig/cload_all_nrf.sh diff --git a/sys-test/swarm_test_rig/cload_all_stm.sh b/sys_test/swarm_test_rig/cload_all_stm.sh similarity index 100% rename from sys-test/swarm_test_rig/cload_all_stm.sh rename to sys_test/swarm_test_rig/cload_all_stm.sh diff --git a/sys-test/swarm_test_rig/test_connection.py b/sys_test/swarm_test_rig/test_connection.py similarity index 61% rename from sys-test/swarm_test_rig/test_connection.py rename to sys_test/swarm_test_rig/test_connection.py index 1c8f6b9c8f52bb85142c461c946e3f68c0eb8ebc..8b90090e077e42710e924cb4fafefd2c5dd3ac61 100644 --- a/sys-test/swarm_test_rig/test_connection.py +++ b/sys_test/swarm_test_rig/test_connection.py @@ -30,36 +30,23 @@ from cflib.crazyflie.log import LogConfig from cflib.crazyflie.swarm import CachedCfFactory from cflib.crazyflie.swarm import Swarm from cflib.crazyflie.syncCrazyflie import SyncCrazyflie -from cflib.crtp import RadioDriver -from cflib.drivers.crazyradio import Crazyradio +from sys_test.swarm_test_rig.test_rig_support import TestRigSupport class TestSwarmConnection(unittest.TestCase): def setUp(self): cflib.crtp.init_drivers(enable_debug_driver=False) - - self.all_uris = [ - 'radio://0/42/2M/E7E7E74201', - 'radio://0/42/2M/E7E7E74202', - 'radio://0/42/2M/E7E7E74203', - 'radio://0/42/2M/E7E7E74204', - 'radio://0/42/2M/E7E7E74205', - 'radio://0/42/2M/E7E7E74206', - 'radio://0/42/2M/E7E7E74207', - 'radio://0/42/2M/E7E7E74208', - 'radio://0/42/2M/E7E7E74209', - 'radio://0/42/2M/E7E7E7420A', - ] + self.test_rig_support = TestRigSupport() def test_that_connection_time_scales_with_more_devices_without_cache(self): # Fixture - self.restart_devices(self.all_uris) + self.test_rig_support.restart_devices(self.test_rig_support.all_uris) EXPECTED_CONNECTION_TIME = 5 - for nr_of_devices in range(1, len(self.all_uris)): + for nr_of_devices in range(1, len(self.test_rig_support.all_uris)): # Test - uris = self.all_uris[:nr_of_devices] + uris = self.testRigSupport.all_uris[:nr_of_devices] start_time = time.time() with Swarm(uris): @@ -75,18 +62,18 @@ class TestSwarmConnection(unittest.TestCase): def test_that_connection_time_scales_with_more_devices_with_cache(self): # Fixture - self.restart_devices(self.all_uris) + self.test_rig_support.restart_devices(self.test_rig_support.all_uris) # Fill caches first by connecting to all devices factory = CachedCfFactory(rw_cache='./cache') - with Swarm(self.all_uris, factory=factory): + with Swarm(self.test_rig_support.all_uris, factory=factory): pass EXPECTED_CONNECTION_TIME = 1.5 - for nr_of_devices in range(1, len(self.all_uris)): + for nr_of_devices in range(1, len(self.test_rig_support.all_uris)): # Test - uris = self.all_uris[:nr_of_devices] + uris = self.test_rig_support.all_uris[:nr_of_devices] start_time = time.time() with Swarm(uris, factory=factory): @@ -104,7 +91,7 @@ class TestSwarmConnection(unittest.TestCase): # Fixture # Test # Assert - self.restart_devices(self.all_uris) + self.test_rig_support.restart_devices(self.test_rig_support.all_uris) def test_that_the_same_cf_object_can_be_connected_multiple_times(self): # Fixture @@ -114,37 +101,7 @@ class TestSwarmConnection(unittest.TestCase): lg_conf.add_variable('stabilizer.roll', 'float') # Test - for uri in self.all_uris: + for uri in self.test_rig_support.all_uris: with SyncCrazyflie(uri, cf=cf): pass - # Utility functions --------------------------------------------- - - def restart_devices(self, uris): - def send_packets(uris, value): - for uri in uris: - devid, channel, datarate, address = RadioDriver.parse_uri(uri) - radio.set_channel(channel) - radio.set_data_rate(datarate) - radio.set_address(address) - - received_packet = False - for i in range(100): - result = radio.send_packet((0xf3, 0xfe, value)) - if result.ack is True: - received_packet = True - break - - self.assertTrue(received_packet) - - print('Restarting devices') - - BOOTLOADER_CMD_SYSOFF = 0x02 - BOOTLOADER_CMD_SYSON = 0x03 - - radio = Crazyradio() - send_packets(uris, BOOTLOADER_CMD_SYSOFF) - time.sleep(0.1) - send_packets(uris, BOOTLOADER_CMD_SYSON) - radio.close() - time.sleep(5)