### Question:
EncodingManager { public String toDetailsString() { StringBuilder str = new StringBuilder(); for (AbstractFlagEncoder encoder : edgeEncoders) { if (str.length() > 0) str.append(","); str.append(encoder.toString()) .append("|") .append(encoder.getPropertiesString()) .append("|version=") .append(encoder.getVersion()); } return str.toString(); } EncodingManager( String flagEncodersStr );  EncodingManager( String flagEncodersStr, int bytesForFlags );  EncodingManager( FlagEncoder... flagEncoders );  EncodingManager( List<? extends FlagEncoder> flagEncoders );  EncodingManager( List<? extends FlagEncoder> flagEncoders, int bytesForEdgeFlags ); int getBytesForFlags(); boolean supports( String encoder ); FlagEncoder getEncoder( String name ); long acceptWay( OSMWay way ); long handleRelationTags( OSMRelation relation, long oldRelationFlags ); long handleWayTags( OSMWay way, long includeWay, long relationFlags ); @Override String toString(); String toDetailsString(); long flagsDefault( boolean forward, boolean backward ); long reverseFlags( long flags ); @Override int hashCode(); @Override boolean equals( Object obj ); long handleNodeTags( OSMNode node ); EncodingManager setEnableInstructions( boolean enableInstructions ); void applyWayTags( OSMWay way, EdgeIteratorState edge ); List<FlagEncoder> fetchEdgeEncoders(); boolean needsTurnCostsSupport(); static EncodingManager create( String ghLoc ); static final String CAR; static final String BIKE; static final String BIKE2; static final String RACINGBIKE; static final String MOUNTAINBIKE; static final String FOOT; static final String MOTORCYCLE; }### Answer:
@Test public void testToDetailsStringIncludesEncoderVersionNumber() { FlagEncoder encoder = new AbstractFlagEncoder(1, 2.0, 3) { @Override public int getVersion() { return 10; } @Override public String toString() { return "newEncoder"; } @Override protected String getPropertiesString() { return "myProperties"; } @Override public long handleRelationTags( OSMRelation relation, long oldRelationFlags ) { return 0; } @Override public long acceptWay( OSMWay way ) { return 0; } @Override public long handleWayTags( OSMWay way, long allowed, long relationFlags ) { return 0; } }; EncodingManager subject = new EncodingManager(encoder); assertEquals("newEncoder|myProperties|version=10", subject.toDetailsString()); }