From bcf34715868c7af8a55d5ddc9aabae236e6ce94e Mon Sep 17 00:00:00 2001 From: bernatx Date: Fri, 21 Oct 2022 00:29:49 +0200 Subject: [PATCH] Ignore large maps for testing spawn points --- PythonAPI/test/smoke/test_spawnpoints.py | 82 ++++++++++++------------ 1 file changed, 42 insertions(+), 40 deletions(-) diff --git a/PythonAPI/test/smoke/test_spawnpoints.py b/PythonAPI/test/smoke/test_spawnpoints.py index 25e874406..7b0e3acc1 100644 --- a/PythonAPI/test/smoke/test_spawnpoints.py +++ b/PythonAPI/test/smoke/test_spawnpoints.py @@ -20,51 +20,53 @@ class TestSpawnpoints(SyncSmokeTest): maps = self.client.get_available_maps() for m in maps: - # load the map - self.client.load_world(m) - # workaround: give time to UE4 to clean memory after loading (old assets) - time.sleep(5) - - self.world = self.client.get_world() + if m != '/Game/Carla/Maps/BaseMap/BaseMap' and m != '/Game/Carla/Maps/Town11/Town11' and m != '/Game/Carla/Maps/Town12/Town12': - # get all spawn points - spawn_points = self.world.get_map().get_spawn_points() + # load the map + self.client.load_world(m) + # workaround: give time to UE4 to clean memory after loading (old assets) + time.sleep(5) + + self.world = self.client.get_world() - # Check why the world settings aren't applied after a reload - self.settings = self.world.get_settings() - settings = carla.WorldSettings( - no_rendering_mode=False, - synchronous_mode=True, - fixed_delta_seconds=0.05) - self.world.apply_settings(settings) + # get all spawn points + spawn_points = self.world.get_map().get_spawn_points() - # spawn all kind of vehicle - for vehicle in blueprints: - batch = [(vehicle, t) for t in spawn_points] - batch = [carla.command.SpawnActor(*args) for args in batch] - response = self.client.apply_batch_sync(batch, False) + # Check why the world settings aren't applied after a reload + self.settings = self.world.get_settings() + settings = carla.WorldSettings( + no_rendering_mode=False, + synchronous_mode=True, + fixed_delta_seconds=0.05) + self.world.apply_settings(settings) - self.assertFalse(any(x.error for x in response)) - ids = [x.actor_id for x in response] - self.assertEqual(len(ids), len(spawn_points)) + # spawn all kind of vehicle + for vehicle in blueprints: + batch = [(vehicle, t) for t in spawn_points] + batch = [carla.command.SpawnActor(*args) for args in batch] + response = self.client.apply_batch_sync(batch, False) - frame = self.world.tick() - snapshot = self.world.get_snapshot() - self.assertEqual(frame, snapshot.timestamp.frame) + self.assertFalse(any(x.error for x in response)) + ids = [x.actor_id for x in response] + self.assertEqual(len(ids), len(spawn_points)) - actors = self.world.get_actors() - self.assertTrue(all(snapshot.has_actor(x.id) for x in actors)) + frame = self.world.tick() + snapshot = self.world.get_snapshot() + self.assertEqual(frame, snapshot.timestamp.frame) - for actor_id, t0 in zip(ids, spawn_points): - actor_snapshot = snapshot.find(actor_id) - self.assertIsNotNone(actor_snapshot) - t1 = actor_snapshot.get_transform() - # Ignore Z cause vehicle is falling. - self.assertAlmostEqual(t0.location.x, t1.location.x, places=2) - self.assertAlmostEqual(t0.location.y, t1.location.y, places=2) - self.assertAlmostEqual(t0.rotation.pitch, t1.rotation.pitch, places=2) - self.assertAlmostEqual(t0.rotation.yaw, t1.rotation.yaw, places=2) - self.assertAlmostEqual(t0.rotation.roll, t1.rotation.roll, places=2) + actors = self.world.get_actors() + self.assertTrue(all(snapshot.has_actor(x.id) for x in actors)) - self.client.apply_batch_sync([carla.command.DestroyActor(x) for x in ids], True) - frame = self.world.tick() + for actor_id, t0 in zip(ids, spawn_points): + actor_snapshot = snapshot.find(actor_id) + self.assertIsNotNone(actor_snapshot) + t1 = actor_snapshot.get_transform() + # Ignore Z cause vehicle is falling. + self.assertAlmostEqual(t0.location.x, t1.location.x, places=2) + self.assertAlmostEqual(t0.location.y, t1.location.y, places=2) + self.assertAlmostEqual(t0.rotation.pitch, t1.rotation.pitch, places=2) + self.assertAlmostEqual(t0.rotation.yaw, t1.rotation.yaw, places=2) + self.assertAlmostEqual(t0.rotation.roll, t1.rotation.roll, places=2) + + self.client.apply_batch_sync([carla.command.DestroyActor(x) for x in ids], True) + frame = self.world.tick()