Browse Source

Audio: Add tests for hrtf methods in Renderer and the HrtfStatus enum.

Signed-off-by: Squareys <Squareys@googlemail.com>
pull/111/head
Squareys 11 years ago
parent
commit
e8a75f270f
  1. 18
      src/Magnum/Audio/Test/RendererTest.cpp

18
src/Magnum/Audio/Test/RendererTest.cpp

@ -37,6 +37,7 @@ struct RendererTest: TestSuite::Tester {
void debugError(); void debugError();
void debugDistanceModel(); void debugDistanceModel();
void hrtfStatus();
void listenerOrientation(); void listenerOrientation();
void listenerPosition(); void listenerPosition();
void listenerVelocity(); void listenerVelocity();
@ -44,6 +45,7 @@ struct RendererTest: TestSuite::Tester {
void speedOfSound(); void speedOfSound();
void dopplerFactor(); void dopplerFactor();
void distanceModel(); void distanceModel();
void hrtfs();
Context _context; Context _context;
}; };
@ -51,13 +53,15 @@ struct RendererTest: TestSuite::Tester {
RendererTest::RendererTest() { RendererTest::RendererTest() {
addTests({&RendererTest::debugError, addTests({&RendererTest::debugError,
&RendererTest::debugDistanceModel, &RendererTest::debugDistanceModel,
&RendererTest::hrtfStatus,
&RendererTest::listenerOrientation, &RendererTest::listenerOrientation,
&RendererTest::listenerPosition, &RendererTest::listenerPosition,
&RendererTest::listenerVelocity, &RendererTest::listenerVelocity,
&RendererTest::listenerGain, &RendererTest::listenerGain,
&RendererTest::speedOfSound, &RendererTest::speedOfSound,
&RendererTest::dopplerFactor, &RendererTest::dopplerFactor,
&RendererTest::distanceModel}); &RendererTest::distanceModel,
&RendererTest::hrtfs});
} }
void RendererTest::debugError() { void RendererTest::debugError() {
@ -72,6 +76,12 @@ void RendererTest::debugDistanceModel() {
CORRADE_COMPARE(out.str(), "Audio::Renderer::DistanceModel::Inverse\n"); CORRADE_COMPARE(out.str(), "Audio::Renderer::DistanceModel::Inverse\n");
} }
void RendererTest::hrtfStatus() {
std::ostringstream out;
Debug(&out) << Renderer::HrtfStatus::Denied;
CORRADE_COMPARE(out.str(), "Audio::Renderer::HrtfStatus::Denied\n");
}
void RendererTest::listenerOrientation() { void RendererTest::listenerOrientation() {
constexpr Vector3 up{1.0f, 2.0f, 3.0f}, fwd{3.0f, 2.0f, 1.0f}; constexpr Vector3 up{1.0f, 2.0f, 3.0f}, fwd{3.0f, 2.0f, 1.0f};
Renderer::setListenerOrientation(fwd, up); Renderer::setListenerOrientation(fwd, up);
@ -123,6 +133,12 @@ void RendererTest::distanceModel() {
CORRADE_COMPARE(Renderer::distanceModel(), model); CORRADE_COMPARE(Renderer::distanceModel(), model);
} }
void RendererTest::hrtfs() {
/* At least test that the hrtf status is `Disabled` */
CORRADE_VERIFY(!Renderer::isHrtfEnabled());
CORRADE_COMPARE(Renderer::hrtfStatus(), Renderer::HrtfStatus::Disabled);
}
}}} }}}
CORRADE_TEST_MAIN(Magnum::Audio::Test::RendererTest) CORRADE_TEST_MAIN(Magnum::Audio::Test::RendererTest)

Loading…
Cancel
Save