def test_create_furniture_cupboard_with_key(self): cupboard_min = np.random.randint(0, 100) cupboard_max = cupboard_min + np.random.randint(40, 180-cupboard_min) key_min = np.random.randint(0, 100) key_max = key_min + np.random.randint(40, 180-key_min) create_furniture(Furniture.cupboard_key, self.world, 10e-3, [(key_min, key_max), (cupboard_min, cupboard_max)]) self.assertEqual(len(self.world.joints), 2) self.assertEqual(self.world.joints[0].min_limit, key_min) self.assertEqual(self.world.joints[0].max_limit, key_max) self.assertEqual(self.world.joints[1].min_limit, cupboard_min) self.assertEqual(self.world.joints[1].max_limit, cupboard_max) for listener in self.world.listeners: if isinstance(listener, MultiLocker): self.assertLess(listener.locks[0][0], listener.locks[0][1]) self.assertLess(listener.locks[0][1], listener.locks[1][0]) self.assertLess(listener.locks[1][0], listener.locks[1][1]) self.assertEqual(listener.locks[0][0], key_min) self.assertEqual(listener.locks[1][1], key_max) self.assertLessEqual(listener.locks[1][0]-listener.locks[0][1], 20) self.assertGreaterEqual((listener.locks[1][0] - listener.locks[0][1]), 10)
def test_create_furniture_cupboard_with_handle(self): drawer_min = np.random.randint(0, 100) drawer_max = drawer_min + np.random.randint(20, 180-drawer_min) handle_min = np.random.randint(0, 100) handle_max = handle_min + np.random.randint(20, 180-handle_min) create_furniture(Furniture.drawer_handle, self.world, 10e-3, [(handle_min, handle_max), (drawer_min, drawer_max)]) self.assertEqual(len(self.world.joints), 2) self.assertEqual(self.world.joints[0].min_limit, handle_min) self.assertEqual(self.world.joints[0].max_limit, handle_max) self.assertEqual(self.world.joints[1].min_limit, drawer_min) self.assertEqual(self.world.joints[1].max_limit, drawer_max) for listener in self.world.listeners: if isinstance(listener, MultiLocker): self.assertLess(listener.locks[0][0], listener.locks[0][1])