def test_generate_boids_flock(self): boids = BoidsMethod() flock = boids.generate_boids_flock(np.array([-450.0, 300.0]), np.array([50.0, 600.0])) # Ensure the generated flock is in the correct dimensions # to be processed later on in the programme desired_dimensions = (2L, 50L) self.analyse(flock.shape, desired_dimensions, "exactly_equal")
def generator(self, test_data, file): for point in test_data: before = point.pop("before") after = point.pop("after") boids = BoidsMethod() boids.positions = np.array(before[0:2]) boids.velocities = np.array(before[2:4]) if file == "update_boids_1.yaml": boids.update_boids() self.analyse(boids.positions, np.array(after[0:2]), "almost_equal") self.analyse(boids.velocities, np.array(after[2:4]), "almost_equal") elif file == "fly_towards_middle_1.yaml": boids.fly_towards_middle() self.analyse(boids.positions, np.array(after[0:2]), "almost_equal") self.analyse(boids.velocities, np.array(after[2:4]), "almost_equal") elif file == "fly_away_from_nearby_boids_1.yaml": boids.fly_away_from_nearby_boids() self.analyse(boids.positions, np.array(after[0:2]), "almost_equal") self.analyse(boids.velocities, np.array(after[2:4]), "almost_equal") elif file == "try_to_match_speed_with_nearby_boids_1.yaml": boids.try_to_match_speed_with_nearby_boids() self.analyse(boids.positions, np.array(after[0:2]), "almost_equal") self.analyse(boids.velocities, np.array(after[2:4]), "almost_equal") elif file == "move_according_to_velocities_1": boids.move_according_to_velocities() self.analyse(boids.positions, np.array(after[0:2]), "almost_equal") self.analyse(boids.velocities, np.array(after[2:4]), "almost_equal")