[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