Update of /cvsroot/java-game-lib/LWJGL/src/java/org/lwjgl/openal/test
In directory usw-pr-cvs1:/tmp/cvs-serv32005/org/lwjgl/openal/test
Modified Files:
ALTest.java
Log Message:
add: finished full automated tests
Index: ALTest.java
CVS Browser:
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/java-game-lib/LWJGL/src/java/org/lwjgl/openal/test/ALTest.java
===================================================================
RCS file: /cvsroot/java-game-lib/LWJGL/src/java/org/lwjgl/openal/test/ALTest.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- ALTest.java 29 Aug 2002 01:49:25 -0000 1.5
+++ ALTest.java 29 Aug 2002 02:00:49 -0000 1.6
@@ -509,7 +509,7 @@
do {
System.out.print("\n\n\nAutomated Test Series:\n\n");
- System.out.print("*A) Run Fully Automated Tests\n");
+ System.out.print("A) Run Fully Automated Tests\n");
System.out.print("*B) Run Semi-Automated Tests\n");
System.out.print("\nInteractive Tests:\n\n");
System.out.print("1 Position Test\n");
@@ -581,7 +581,7 @@
fA_VectorStateTransition(); // Vector State Transistion Testing
fA_GetBufferProperties(); // Get Buffer Properties
fA_EnumerationValue(); // Enumeration Value Test
- //fA_QueuingUnderrunStates(); // test underrun while queuing
+ fA_QueuingUnderrunStates(); // test underrun while queuing
System.out.print("\n\n");
delay_ms(1000);
@@ -906,6 +906,75 @@
}
if(result == true) {
+ System.out.print("PASSED.");
+ } else {
+ System.out.print("FAILED.");
+ }
+ }
+
+ protected void fA_QueuingUnderrunStates() {
+ ByteBuffer testSources = ByteBuffer.allocateDirect(4*1);
+ testSources.order(ByteOrder.nativeOrder());
+
+ ByteBuffer tempInt = ByteBuffer.allocateDirect(4);
+ tempInt.order(ByteOrder.nativeOrder());
+ int error;
+ ByteBuffer bufferName = ByteBuffer.allocateDirect(4);
+ bufferName.order(ByteOrder.nativeOrder());
+
+ ByteBuffer listenerOri = ByteBuffer.allocateDirect(24);
+ listenerOri.order(ByteOrder.nativeOrder());
+ listenerOri.putFloat(0.0f);
+ listenerOri.putFloat(0.0f);
+ listenerOri.putFloat(-1.0f);
+ listenerOri.putFloat(0.0f);
+ listenerOri.putFloat(1.0f);
+ listenerOri.putFloat(0.0f);
+
+ ByteBuffer sourceOri = ByteBuffer.allocateDirect(24);
+ sourceOri.order(ByteOrder.nativeOrder());
+ sourceOri.putFloat(1.0f);
+ sourceOri.putFloat(0.0f);
+ sourceOri.putFloat(0.0f);
+ sourceOri.putFloat(0.0f);
+ sourceOri.putFloat(1.0f);
+ sourceOri.putFloat(0.0f);
+
+ boolean localResultOK;
+
+ System.out.print("\nQueuing Underrun States Test. ");
+ localResultOK = true;
+ al.getError();
+ al.genSources(1, Sys.getDirectBufferAddress(testSources));
+ al.sourcei(testSources.getInt(4*0), AL.BUFFER, 0);
+ al.sourcei(testSources.getInt(4*0), AL.LOOPING, AL.FALSE);
+ if ((error = al.getError()) != AL.NO_ERROR)
+ displayALError("Init error : ", error);
+ al.sourceQueueBuffers(testSources.getInt(4*0), 1, Sys.getDirectBufferAddress(buffers) + (4*1));
+ if ((error = al.getError()) != AL.NO_ERROR) localResultOK = false;
+ al.sourcePlay(testSources.getInt(4*0));
+ delay_ms(1000);
+ al.getSourcei(testSources.getInt(4*0), AL.SOURCE_STATE, Sys.getDirectBufferAddress(tempInt));
+ if (tempInt.getInt(0) != AL.STOPPED) localResultOK = false;
+ al.getSourcei(testSources.getInt(4*0), AL.BUFFERS_PROCESSED, Sys.getDirectBufferAddress(tempInt));
+ if (tempInt.getInt(0) != 1) {
+ localResultOK = false;
+ } else {
+ al.sourceUnqueueBuffers(testSources.getInt(4*0), tempInt.getInt(0), Sys.getDirectBufferAddress(bufferName));
+ }
+ al.sourceQueueBuffers(testSources.getInt(4*0), 1, Sys.getDirectBufferAddress(buffers) + (4*1));
+ if ((error = al.getError()) != AL.NO_ERROR) localResultOK = false;
+ al.sourcePlay(testSources.getInt(4*0));
+ delay_ms(100);
+ al.getSourcei(testSources.getInt(4*0), AL.SOURCE_STATE, Sys.getDirectBufferAddress(tempInt));
+ if (tempInt.getInt(0) != AL.PLAYING) localResultOK = false;
+
+ // cleanup
+ al.sourcei(testSources.getInt(4*0), AL.BUFFER, 0);
+ al.deleteSources(1, Sys.getDirectBufferAddress(testSources));
+
+ // display result
+ if (localResultOK == true) {
System.out.print("PASSED.");
} else {
System.out.print("FAILED.");
|