[Scummvm-cvs-logs] SF.net SVN: scummvm:[47937] scummvm/trunk/test/sound/audiostream.h
lordhoto at users.sourceforge.net
lordhoto at users.sourceforge.net
Sat Feb 6 19:20:34 CET 2010
Revision: 47937
http://scummvm.svn.sourceforge.net/scummvm/?rev=47937&view=rev
Author: lordhoto
Date: 2010-02-06 18:20:33 +0000 (Sat, 06 Feb 2010)
Log Message:
-----------
Some slight extension for the LoopingAudioStream unit test(s).
Modified Paths:
--------------
scummvm/trunk/test/sound/audiostream.h
Modified: scummvm/trunk/test/sound/audiostream.h
===================================================================
--- scummvm/trunk/test/sound/audiostream.h 2010-02-06 17:03:18 UTC (rev 47936)
+++ scummvm/trunk/test/sound/audiostream.h 2010-02-06 18:20:33 UTC (rev 47937)
@@ -40,9 +40,9 @@
int16 *sine = 0;
Audio::SeekableAudioStream *s = createSineStream<int16>(sampleRate, 1, &sine, false, isStereo);
- Audio::LoopingAudioStream *loop = new Audio::LoopingAudioStream(s, 4);
+ Audio::LoopingAudioStream *loop = new Audio::LoopingAudioStream(s, 7);
- int16 *buffer = new int16[secondLength * 2];
+ int16 *buffer = new int16[secondLength * 3];
// Check parameters
TS_ASSERT_EQUALS(loop->isStereo(), isStereo);
@@ -65,16 +65,25 @@
TS_ASSERT_EQUALS(loop->getCompleteIterations(), (uint)3);
TS_ASSERT_EQUALS(loop->endOfData(), false);
+ // Read three seconds
+ TS_ASSERT_EQUALS(loop->readBuffer(buffer, secondLength * 3), secondLength * 3);
+ TS_ASSERT_EQUALS(memcmp(buffer, sine, secondLength * sizeof(int16)), 0);
+ TS_ASSERT_EQUALS(memcmp(buffer + secondLength, sine, secondLength * sizeof(int16)), 0);
+ TS_ASSERT_EQUALS(memcmp(buffer + secondLength * 2, sine, secondLength * sizeof(int16)), 0);
+
+ TS_ASSERT_EQUALS(loop->getCompleteIterations(), (uint)6);
+ TS_ASSERT_EQUALS(loop->endOfData(), false);
+
// Read the last second
TS_ASSERT_EQUALS(loop->readBuffer(buffer, secondLength), secondLength);
TS_ASSERT_EQUALS(memcmp(buffer, sine, secondLength * sizeof(int16)), 0);
- TS_ASSERT_EQUALS(loop->getCompleteIterations(), (uint)4);
+ TS_ASSERT_EQUALS(loop->getCompleteIterations(), (uint)7);
TS_ASSERT_EQUALS(loop->endOfData(), true);
// Try to read beyond the end of the stream
TS_ASSERT_EQUALS(loop->readBuffer(buffer, secondLength), 0);
- TS_ASSERT_EQUALS(loop->getCompleteIterations(), (uint)4);
+ TS_ASSERT_EQUALS(loop->getCompleteIterations(), (uint)7);
TS_ASSERT_EQUALS(loop->endOfData(), true);
delete[] buffer;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list