diff options
| author | JAROWMR <jarorutjes07@gmail.com> | 2024-11-10 15:39:58 +0100 | 
|---|---|---|
| committer | JAROWMR <jarorutjes07@gmail.com> | 2024-11-10 15:39:58 +0100 | 
| commit | 556eb319c9e5c3f6b90e9533eadcdd5682a5d347 (patch) | |
| tree | 050aecd2405f65d0dd6c110ba6fb2daf87f9ea6f /src | |
| parent | b668abb3a0671c1233bb30d038a5a53018aa8620 (diff) | |
updated test
Diffstat (limited to 'src')
| -rw-r--r-- | src/test/ParticleTest.cpp | 39 | 
1 files changed, 29 insertions, 10 deletions
| diff --git a/src/test/ParticleTest.cpp b/src/test/ParticleTest.cpp index aa63ccf..368a1f6 100644 --- a/src/test/ParticleTest.cpp +++ b/src/test/ParticleTest.cpp @@ -24,7 +24,7 @@ protected:  			game_object = new GameObject(0, "", "", Vector2{0, 0}, 0, 0);  			game_object->add_component<ParticleEmitter>(ParticleEmitter::Data{  				.position = {0,0}, -				.max_particles = 1, +				.max_particles = 100,  				.emission_rate = 0,  				.min_speed = 0,  				.max_speed = 0, @@ -47,12 +47,23 @@ protected:  		transform.position.x = 0.0;  		transform.position.y = 0.0;  		transform.rotation = 0.0; -		std::vector<std::reference_wrapper<Rigidbody>> rigidbodies -			= mgr.get_components_by_id<Rigidbody>(0); -		Rigidbody & rigidbody = rigidbodies.front().get(); -		rigidbody.data.angular_velocity = 0; -		rigidbody.data.linear_velocity.x = 0; -		rigidbody.data.linear_velocity.y = 0; +		std::vector<std::reference_wrapper<ParticleEmitter>> rigidbodies +			= mgr.get_components_by_id<ParticleEmitter>(0); +		ParticleEmitter & emitter = rigidbodies.front().get(); +		emitter.data.position = {0, 0}; +		emitter.data.emission_rate = 0; +		emitter.data.min_speed = 0; +		emitter.data.max_speed = 0; +		emitter.data.min_angle = 0; +		emitter.data.max_angle = 0; +		emitter.data.begin_lifespan = 0; +		emitter.data.end_lifespan = 0; +		emitter.data.force_over_time = Vector2{0, 0}; +		emitter.data.boundary = {0, 0, Vector2{0, 0}, false}; +		emitter.data.sprite = nullptr; +		for (auto& particle : emitter.data.particles) { +			particle.active = false; +		}  	}  }; @@ -67,11 +78,18 @@ TEST_F(ParticlesTest, spawnParticle) {  	emitter.data.max_angle = 1;  	particle_system.update();   	//check if nothing happend -	EXPECT_EQ(emitter.data.particles.size(), 0); +	EXPECT_EQ(emitter.data.particles[0].active, 0);  	emitter.data.emission_rate = 1; +	//check particle spawnes +	particle_system.update(); +	EXPECT_EQ(emitter.data.particles[0].active, 1); +	particle_system.update(); +	EXPECT_EQ(emitter.data.particles[1].active, 1);  	particle_system.update(); -	//check if particle spawned -	EXPECT_EQ(emitter.data.particles.size(), 1); +	EXPECT_EQ(emitter.data.particles[2].active, 1); +	particle_system.update(); +	EXPECT_EQ(emitter.data.particles[3].active, 1); +	  	for (auto& particle : emitter.data.particles) {          // Check velocity range          EXPECT_GE(particle.velocity.x, emitter.data.min_speed);  // Speed should be greater than or equal to min_speed @@ -83,4 +101,5 @@ TEST_F(ParticlesTest, spawnParticle) {          EXPECT_GE(particle.angle, emitter.data.min_angle);  // Angle should be greater than or equal to min_angle          EXPECT_LE(particle.angle, emitter.data.max_angle);  // Angle should be less than or equal to max_angle      } +  } |