1 package org.apache.harmony.tests.java.io; 2 3 import java.io.ObjectStreamClass; 4 5 6 public class ComputeSerialVersionUIDTest extends junit.framework.TestCase { 7 8 public void testComputeSUIDClass() throws Exception { 9 assertEquals(-5877374382732244721L, 10 computeSerialVersionUID(SerializationTestClass.TestClassName1.class)); 11 assertEquals(-2258784348609133821L, 12 computeSerialVersionUID(SerializationTestClass.TestClassName2T_T$T.class)); 13 assertEquals(-5674447587118957354L, 14 computeSerialVersionUID(SerializationTestClass.TestClassModifierPublic.class)); 15 assertEquals(8333249076871004334L, 16 computeSerialVersionUID(SerializationTestClass.TestClassModifierAbstract.class)); 17 assertEquals(-6752991881983868187L, 18 computeSerialVersionUID(SerializationTestClass.TestClassModifierFinal.class)); 19 assertEquals(-2046603329186110997L, 20 computeSerialVersionUID(SerializationTestClass.TestClassModifierInterface.class)); 21 } 22 23 public void testComputeSUIDInterfaces() throws Exception { 24 assertEquals(2385879270919801624L, computeSerialVersionUID(SerializationTestClass.TestInterfaces.class)); 25 assertEquals(-3876044724689092051L, computeSerialVersionUID(SerializationTestClass.TestInterfacesA.class)); 26 assertEquals(6691168002125833763L, computeSerialVersionUID(SerializationTestClass.TestInterfacesAB.class)); 27 assertEquals(-3862602835688739317L, computeSerialVersionUID(SerializationTestClass.TestInterfacesBA.class)); 28 assertEquals(6153219913626150137L, computeSerialVersionUID(SerializationTestClass.TestInterfacesC.class)); 29 assertEquals(-5230940296111061949L, computeSerialVersionUID(SerializationTestClass.TestInterfacesCA.class)); 30 assertEquals(-561891731488612449L, computeSerialVersionUID(SerializationTestClass.TestInterfacesABC.class)); 31 assertEquals(7173098887933679885L, computeSerialVersionUID(SerializationTestClass.TestInterfacesACB.class)); 32 assertEquals(7417451177210251082L, computeSerialVersionUID(SerializationTestClass.TestInterfacesBAC.class)); 33 assertEquals(6457265192863049241L, computeSerialVersionUID(SerializationTestClass.TestInterfacesBCA.class)); 34 assertEquals( 5890948387530452778L, computeSerialVersionUID(SerializationTestClass.TestInterfacesCAB.class)); 35 assertEquals(-7493935950381842313L, computeSerialVersionUID(SerializationTestClass.TestInterfacesCBA.class)); 36 } 37 38 39 public void testComputeSUIDFields() throws Exception { 40 assertEquals(-30967666739349603L, computeSerialVersionUID(SerializationTestClass.TestFieldsNone.class)); 41 assertEquals(8551211022820107208L, computeSerialVersionUID(SerializationTestClass.TestFieldsOneFinal.class)); 42 assertEquals(-7774226929120968860L, computeSerialVersionUID(SerializationTestClass.TestFieldsTwoFinal.class)); 43 assertEquals(-8196468848051541845L, computeSerialVersionUID(SerializationTestClass.TestFieldsOnePrivate.class)); 44 assertEquals(-7861029019096564216L, computeSerialVersionUID(SerializationTestClass.TestFieldsTwoPrivate.class)); 45 assertEquals(81248916710250820L, computeSerialVersionUID(SerializationTestClass.TestFieldsOneProtected.class)); 46 assertEquals(280835377416490750L, computeSerialVersionUID(SerializationTestClass.TestFieldsTwoProtected.class)); 47 assertEquals(-2290036437752730858L, computeSerialVersionUID(SerializationTestClass.TestFieldsOnePublic.class)); 48 assertEquals(-6124932240571007214L, computeSerialVersionUID(SerializationTestClass.TestFieldsTwoPublic.class)); 49 assertEquals(6101579853402497691L, computeSerialVersionUID(SerializationTestClass.TestFieldsOneStatic.class)); 50 assertEquals(-7900976994549865116L, computeSerialVersionUID(SerializationTestClass.TestFieldsTwoStatic.class)); 51 assertEquals(-4499355017417065560L, computeSerialVersionUID(SerializationTestClass.TestFieldsOneTransient.class)); 52 assertEquals(3747907454018261619L, computeSerialVersionUID(SerializationTestClass.TestFieldsTwoTransient.class)); 53 assertEquals(-4945042592592621725L, computeSerialVersionUID(SerializationTestClass.TestFieldsOneVolatile.class)); 54 assertEquals(8983117060325881490L, computeSerialVersionUID(SerializationTestClass.TestFieldsTwoVolatile.class)); 55 assertEquals(-8336483965186710722L, computeSerialVersionUID(SerializationTestClass.TestFieldSignatures.class)); 56 } 57 58 59 public void testComputeSUIDConstructors() throws Exception { 60 assertEquals(-614706174292151857L, computeSerialVersionUID(SerializationTestClass.TestConstructorNone.class)); 61 assertEquals(-3706135726712902027L, computeSerialVersionUID(SerializationTestClass.TestConstructorOne.class)); 62 assertEquals(-8094991171016233719L, computeSerialVersionUID(SerializationTestClass.TestConstructorPrivate.class)); 63 assertEquals(-8117933510362198687L, computeSerialVersionUID(SerializationTestClass.TestConstructorProtected.class)); 64 assertEquals(9205589590060392077L, computeSerialVersionUID(SerializationTestClass.TestConstructorPublic.class)); 65 assertEquals(5408111072458161992L, computeSerialVersionUID(SerializationTestClass.TestConstructorSignature.class)); 66 assertEquals(625104530709630511L, computeSerialVersionUID(SerializationTestClass.TestConstructorTwo.class)); 67 assertEquals(3737423569701135020L, computeSerialVersionUID(SerializationTestClass.TestConstructorTwoReverse.class)); 68 } 69 70 public void testComputeSUIDMethods() throws Exception { 71 assertEquals(8872679581767836990L, computeSerialVersionUID(SerializationTestClass.TestMethodPrivate.class)); 72 assertEquals(-4558121473827608582L, computeSerialVersionUID(SerializationTestClass.TestMethodAbstract.class)); 73 assertEquals(4148772500508720405L, computeSerialVersionUID(SerializationTestClass.TestMethodFinal.class)); 74 assertEquals(6329381817306256121L, computeSerialVersionUID(SerializationTestClass.TestMethodNative.class)); 75 assertEquals(-2701115429311553102L, computeSerialVersionUID(SerializationTestClass.TestMethodProtected.class)); 76 assertEquals(-4092306049997161465L, computeSerialVersionUID(SerializationTestClass.TestMethodPublic.class)); 77 assertEquals(-7948580256486289776L, computeSerialVersionUID(SerializationTestClass.TestMethodStatic.class)); 78 assertEquals(4085068229405300186L, computeSerialVersionUID(SerializationTestClass.TestMethodSignature.class)); 79 assertEquals(-5743322978294773864L, computeSerialVersionUID(SerializationTestClass.TestMethodReturnSignature.class)); 80 assertEquals(-6908429504335657476L, computeSerialVersionUID(SerializationTestClass.TestMethodSynchronized.class)); 81 } 82 83 private static long computeSerialVersionUID(Class<?> clazz) { 84 return ObjectStreamClass.lookup(clazz).getSerialVersionUID(); 85 } 86 } 87