Browse Source

Add extra tests from DrWav

pull/177/head
Alice 10 years ago
parent
commit
1409b39e4b
  1. 11
      src/MagnumPlugins/WavAudioImporter/Test/CMakeLists.txt
  2. 49
      src/MagnumPlugins/WavAudioImporter/Test/WavImporterTest.cpp
  3. BIN
      src/MagnumPlugins/WavAudioImporter/Test/mono24.wav
  4. BIN
      src/MagnumPlugins/WavAudioImporter/Test/mono4.wav
  5. BIN
      src/MagnumPlugins/WavAudioImporter/Test/stereo32.wav
  6. BIN
      src/MagnumPlugins/WavAudioImporter/Test/stereo4.wav
  7. BIN
      src/MagnumPlugins/WavAudioImporter/Test/surround71Channel24.wav

11
src/MagnumPlugins/WavAudioImporter/Test/CMakeLists.txt

@ -53,23 +53,26 @@ if(CORRADE_TARGET_EMSCRIPTEN)
emscripten_embed_file(WavAudioImporterTest invalidFactChunk.wav "/invalidFactChunk.wav")
emscripten_embed_file(WavAudioImporterTest mono8.wav "/mono8.wav")
emscripten_embed_file(WavAudioImporterTest mono8.wav "/mono8junk.wav")
emscripten_embed_file(WavAudioImporterTest mono8.wav "/mono8.wav")
emscripten_embed_file(WavAudioImporterTest mono8junk.wav "/mono8junk.wav")
emscripten_embed_file(WavAudioImporterTest mono8ALaw.wav "/mono8ALaw.wav")
emscripten_embed_file(WavAudioImporterTest mono8MuLaw.wav "/mono8MuLaw.wav")
emscripten_embed_file(WavAudioImporterTest mono16.wav "/mono16.wav")
emscripten_embed_file(WavAudioImporterTest mono24.wav "/mono24.wav")
emscripten_embed_file(WavAudioImporterTest stereo4.wav "/stereo4.wav")
emscripten_embed_file(WavAudioImporterTest stereo8.wav "/stereo8.wav")
emscripten_embed_file(WavAudioImporterTest stereo8ALaw.wav "/stereo8ALaw.wav")
emscripten_embed_file(WavAudioImporterTest stereo8MuLaw.wav "/stereo8MuLaw.wav")
emscripten_embed_file(WavAudioImporterTest stereo12.wav "/stereo12.wav")
emscripten_embed_file(WavAudioImporterTest stereo16.wav "/stereo16.wav")
emscripten_embed_file(WavAudioImporterTest stereo24.wav "/stereo24.wav")
emscripten_embed_file(WavAudioImporterTest stereo32.wav "/stereo32.wav")
emscripten_embed_file(WavAudioImporterTest mono32f.wav "/mono32f.wav")
emscripten_embed_file(WavAudioImporterTest stereo32f.wav "/stereo32f.wav")
emscripten_embed_file(WavAudioImporterTest stereo64f.wav "/stereo64f.wav")
emscripten_embed_file(WavAudioImporterTest surround616.wav "/surround616.wav")
emscripten_embed_file(WavAudioImporterTest surround51Channel16.wav "/surround51Channel16.wav")
emscripten_embed_file(WavAudioImporterTest surround71Channel24.wav "/surround71Channel24.wav")
endif()

49
src/MagnumPlugins/WavAudioImporter/Test/WavImporterTest.cpp

@ -45,29 +45,34 @@ class WavImporterTest: public TestSuite::Tester {
void wrongSignature();
void unsupportedFormat();
void unsupportedChannelCount();
void invalidPadding();
void invalidLength();
void invalidDataChunk();
void invalidFactChunk();
void mono4();
void mono8();
void mono8junk();
void mono8ALaw();
void mono8MuLaw();
void mono16();
void stereo4();
void stereo8();
void stereo8ALaw();
void stereo8MuLaw();
void stereo12();
void stereo16();
void stereo24();
void stereo32();
void mono32f();
void stereo32f();
void stereo64f();
void surround51Channel16();
void surround71Channel24();
void debugAudioFormat();
};
@ -77,28 +82,34 @@ WavImporterTest::WavImporterTest() {
&WavImporterTest::wrongSignature,
&WavImporterTest::unsupportedFormat,
&WavImporterTest::unsupportedChannelCount,
&WavImporterTest::invalidPadding,
&WavImporterTest::invalidLength,
&WavImporterTest::invalidDataChunk,
&WavImporterTest::invalidFactChunk,
&WavImporterTest::mono4,
&WavImporterTest::mono8,
&WavImporterTest::mono8junk,
&WavImporterTest::mono8ALaw,
&WavImporterTest::mono8MuLaw,
&WavImporterTest::mono16,
&WavImporterTest::stereo4,
&WavImporterTest::stereo8,
&WavImporterTest::stereo8ALaw,
&WavImporterTest::stereo8MuLaw,
&WavImporterTest::stereo12,
&WavImporterTest::stereo16,
&WavImporterTest::stereo24,
&WavImporterTest::stereo32,
&WavImporterTest::mono32f,
&WavImporterTest::stereo32f,
&WavImporterTest::stereo64f,
&WavImporterTest::surround51Channel16,
&WavImporterTest::surround71Channel24,
&WavImporterTest::debugAudioFormat});
}
@ -178,6 +189,15 @@ void WavImporterTest::invalidFactChunk() {
TestSuite::Compare::Container);
}
void WavImporterTest::mono4() {
std::ostringstream out;
Error redirectError{&out};
WavImporter importer;
CORRADE_VERIFY(!importer.openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "mono4.wav")));
CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): unsupported format Audio::WavAudioFormat(0x2)\n");
}
void WavImporterTest::mono8() {
WavImporter importer;
CORRADE_VERIFY(importer.openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "mono8.wav")));
@ -238,6 +258,15 @@ void WavImporterTest::mono16() {
TestSuite::Compare::Container);
}
void WavImporterTest::stereo4() {
std::ostringstream out;
Error redirectError{&out};
WavImporter importer;
CORRADE_VERIFY(!importer.openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "stereo4.wav")));
CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): unsupported format Audio::WavAudioFormat(0x2)\n");
}
void WavImporterTest::stereo8() {
WavImporter importer;
CORRADE_VERIFY(importer.openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "stereo8.wav")));
@ -306,6 +335,16 @@ void WavImporterTest::stereo24() {
CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): PCM with unsupported channel count 2 with 24 bits per sample\n");
}
void WavImporterTest::stereo32() {
std::ostringstream out;
Error redirectError{&out};
WavImporter importer;
CORRADE_VERIFY(!importer.openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "stereo32.wav")));
CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): PCM with unsupported channel count 2 with 32 bits per sample\n");
}
void WavImporterTest::mono32f() {
WavImporter importer;
CORRADE_VERIFY(importer.openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "mono32f.wav")));
@ -359,6 +398,16 @@ void WavImporterTest::surround51Channel16() {
CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): unsupported format Audio::WavAudioFormat::Extensible\n");
}
void WavImporterTest::surround71Channel24() {
std::ostringstream out;
Error redirectError{&out};
WavImporter importer;
CORRADE_VERIFY(!importer.openFile(Utility::Directory::join(WAVAUDIOIMPORTER_TEST_DIR, "surround71Channel24.wav")));
CORRADE_COMPARE(out.str(), "Audio::WavImporter::openData(): unsupported format Audio::WavAudioFormat::Extensible\n");
}
void WavImporterTest::debugAudioFormat() {
std::ostringstream out;

BIN
src/MagnumPlugins/WavAudioImporter/Test/mono24.wav

Binary file not shown.

BIN
src/MagnumPlugins/WavAudioImporter/Test/mono4.wav

Binary file not shown.

BIN
src/MagnumPlugins/WavAudioImporter/Test/stereo32.wav

Binary file not shown.

BIN
src/MagnumPlugins/WavAudioImporter/Test/stereo4.wav

Binary file not shown.

BIN
src/MagnumPlugins/WavAudioImporter/Test/surround71Channel24.wav

Binary file not shown.
Loading…
Cancel
Save