@@ -519,13 +519,36 @@ TEST(TargetTest, SoundEffects)
519519 ASSERT_EQ (target.soundEffectValue (Sound::Effect::Pan), 0 );
520520
521521 auto s1 = std::make_shared<SoundMock>();
522+ EXPECT_CALL (*s1, setVolume);
523+ target.addSound (s1);
524+
525+ EXPECT_CALL (*s1, setEffect (Sound::Effect::Pitch, -360 ));
526+ target.setSoundEffectValue (Sound::Effect::Pitch, -400 );
527+ ASSERT_EQ (target.soundEffectValue (Sound::Effect::Pitch), -360 );
528+
529+ EXPECT_CALL (*s1, setEffect (Sound::Effect::Pitch, 360 ));
530+ target.setSoundEffectValue (Sound::Effect::Pitch, 400 );
531+ ASSERT_EQ (target.soundEffectValue (Sound::Effect::Pitch), 360 );
532+
533+ EXPECT_CALL (*s1, setEffect (Sound::Effect::Pan, -100 ));
534+ target.setSoundEffectValue (Sound::Effect::Pan, -200 );
535+ ASSERT_EQ (target.soundEffectValue (Sound::Effect::Pan), -100 );
536+
537+ EXPECT_CALL (*s1, setEffect (Sound::Effect::Pan, 100 ));
538+ target.setSoundEffectValue (Sound::Effect::Pan, 200 );
539+ ASSERT_EQ (target.soundEffectValue (Sound::Effect::Pan), 100 );
540+
541+ EXPECT_CALL (*s1, setEffect (Sound::Effect::Pitch, 0 ));
542+ EXPECT_CALL (*s1, setEffect (Sound::Effect::Pan, 0 ));
543+ target.clearSoundEffects ();
544+ ASSERT_EQ (target.soundEffectValue (Sound::Effect::Pitch), 0 );
545+ ASSERT_EQ (target.soundEffectValue (Sound::Effect::Pan), 0 );
546+
522547 auto s2 = std::make_shared<SoundMock>();
523548 auto s3 = std::make_shared<SoundMock>();
524549
525- EXPECT_CALL (*s1, setVolume);
526550 EXPECT_CALL (*s2, setVolume);
527551 EXPECT_CALL (*s3, setVolume);
528- target.addSound (s1);
529552 target.addSound (s2);
530553 target.addSound (s3);
531554
@@ -727,14 +750,21 @@ TEST(TargetTest, GraphicsEffects)
727750 target.setEngine (&engine);
728751
729752 GraphicsEffectMock effect1, effect2;
753+ EXPECT_CALL (effect1, clamp (48.21 )).WillOnce (Return (48.21 ));
730754 target.setGraphicsEffectValue (&effect1, 48.21 );
731755 ASSERT_EQ (target.graphicsEffectValue (&effect1), 48.21 );
732756 ASSERT_EQ (target.graphicsEffectValue (&effect2), 0 );
733757
758+ EXPECT_CALL (effect2, clamp (-107.08 )).WillOnce (Return (-107.08 ));
734759 target.setGraphicsEffectValue (&effect2, -107.08 );
735760 ASSERT_EQ (target.graphicsEffectValue (&effect1), 48.21 );
736761 ASSERT_EQ (target.graphicsEffectValue (&effect2), -107.08 );
737762
763+ EXPECT_CALL (effect1, clamp (300 )).WillOnce (Return (101.5 ));
764+ target.setGraphicsEffectValue (&effect1, 300 );
765+ ASSERT_EQ (target.graphicsEffectValue (&effect1), 101.5 );
766+ ASSERT_EQ (target.graphicsEffectValue (&effect2), -107.08 );
767+
738768 target.clearGraphicsEffects ();
739769 ASSERT_EQ (target.graphicsEffectValue (&effect1), 0 );
740770 ASSERT_EQ (target.graphicsEffectValue (&effect2), 0 );
0 commit comments