bayard 2003/11/26 00:15:32
Modified: io/src/test/org/apache/commons/io EndianUtilsTest.java
Log:
Can't say I understand Float.intBitsToFloat and the Double.longBitsToDouble,
but seems to pass the test well enough. I just have this feeling it should
be complaining about lost bits.
Revision Changes Path
1.3 +18 -6
jakarta-commons-sandbox/io/src/test/org/apache/commons/io/EndianUtilsTest.java
Index: EndianUtilsTest.java
===================================================================
RCS file:
/home/cvs/jakarta-commons-sandbox/io/src/test/org/apache/commons/io/EndianUtilsTest.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- EndianUtilsTest.java 26 Nov 2003 07:56:38 -0000 1.2
+++ EndianUtilsTest.java 26 Nov 2003 08:15:32 -0000 1.3
@@ -99,15 +99,23 @@
public void testSwapLong() {
assertEquals( 0, EndianUtils.swapLong( 0 ) );
assertEquals( 0x0807060504030201L, EndianUtils.swapLong(
0x0102030405060708L ) );
+ assertEquals( 0xffffffffffffffffL, EndianUtils.swapLong(
0xffffffffffffffffL ) );
+ assertEquals( 0xab, EndianUtils.swapLong( 0xab00000000000000L ) );
}
- /*
public void testSwapFloat() {
+ assertEquals( 0.0f, EndianUtils.swapFloat( 0.0f ), 0.0 );
+ float f1 = Float.intBitsToFloat( 0x01020304 );
+ float f2 = Float.intBitsToFloat( 0x04030201 );
+ assertEquals( f2, EndianUtils.swapFloat( f1 ), 0.0 );
}
public void testSwapDouble() {
+ assertEquals( 0.0, EndianUtils.swapDouble( 0.0 ), 0.0 );
+ double d1 = Double.longBitsToDouble( 0x0102030405060708L );
+ double d2 = Double.longBitsToDouble( 0x0807060504030201L );
+ assertEquals( d2, EndianUtils.swapDouble( d1 ), 0.0 );
}
- */
/**
* Tests all swapXxxx methods for symmetry when going from one endian
@@ -117,6 +125,10 @@
assertEquals( (short) 0x0102, EndianUtils.swapShort( EndianUtils.swapShort(
(short) 0x0102 ) ) );
assertEquals( 0x01020304, EndianUtils.swapInteger( EndianUtils.swapInteger(
0x01020304 ) ) );
assertEquals( 0x0102030405060708L, EndianUtils.swapLong(
EndianUtils.swapLong( 0x0102030405060708L ) ) );
+ float f1 = Float.intBitsToFloat( 0x01020304 );
+ assertEquals( f1, EndianUtils.swapFloat( EndianUtils.swapFloat( f1 ) ), 0.0
);
+ double d1 = Double.longBitsToDouble( 0x0102030405060708L );
+ assertEquals( d1, EndianUtils.swapDouble( EndianUtils.swapDouble( d1 ) ),
0.0 );
}
/*
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]