### Question:
RevisionNameSerializer extends AbstractElementSerializer<RevisionName> { private RevisionNameSerializer() { super( RevisionNameComparator.INSTANCE ); } private  RevisionNameSerializer(); RevisionName fromBytes( byte[] in ); RevisionName fromBytes( byte[] in, int start ); @Override byte[] serialize( RevisionName revisionName ); @Override RevisionName deserialize( BufferHandler bufferHandler ); @Override RevisionName deserialize( ByteBuffer buffer );  }### Answer:
@Test public void testRevisionNameSerializer() throws IOException { RevisionName value = null; try { serializer.serialize( value ); fail(); } catch ( Exception e ) { } value = new RevisionName( 1L, null ); byte[] result = serializer.serialize( value ); assertEquals( 12, result.length ); assertEquals( 1L, ( long ) LongSerializer.deserialize( result ) ); assertNull( StringSerializer.deserialize( result, 8 ) ); assertEquals( value, serializer.deserialize( new BufferHandler( result ) ) ); value = new RevisionName( 0L, "" ); result = serializer.serialize( value ); assertEquals( value, serializer.deserialize( new BufferHandler( result ) ) ); value = new RevisionName( 0L, "L\u00E9charny" ); result = serializer.serialize( value ); assertEquals( value, serializer.deserialize( new BufferHandler( result ) ) ); }