2016-08-05 16:02:13 +02:00

49 lines
1.7 KiB
Java

package btools.memrouter;
import java.util.ArrayList;
import java.util.List;
import org.junit.Assert;
import org.junit.Test;
public class OffsetSetTest
{
@Test
public void offsetSetTest() throws Exception
{
OffsetSet fullset = OffsetSet.fullSet();
OffsetSet s2 = fullset.emptySet().add( 4 );
Assert.assertTrue( "added bit not found", s2.contains( 4 ) );
Assert.assertTrue( "found false bit", !s2.contains( 3 ) );
Assert.assertTrue( "found bit in fullset", fullset.contains( 17 ) );
List<Integer> offsetList = new ArrayList<Integer>();
offsetList.add( Integer.valueOf( 4 ));
offsetList.add( Integer.valueOf( 5 ));
offsetList.add( Integer.valueOf( 23 ));
offsetList.add( Integer.valueOf( 50 ));
OffsetSet s4 = fullset.create( offsetList );
Assert.assertTrue( "added bit 23 not found", s4.contains( 23 ) );
Assert.assertTrue( "found false bit 17", !s4.contains( 17 ) );
OffsetSet s5 = s2.filter( s4 ); // de-select 4 from s4
Assert.assertTrue( "added bit 5 not found", s5.contains( 5 ) );
Assert.assertTrue( "found false bit 4", !s5.contains( 4 ) );
OffsetSet s6 = s4.filter( s2 ); // de-select 4,5,23,50 from s2 -> = null
Assert.assertTrue( "expected empty set", s6 == null );
OsmLinkP holder = new OsmLinkP();
holder.setOffsetSet( fullset.emptySet().add( 24 ) );
OffsetSet s7 = s4.filterAndClose( holder, true );
// Assert.assertTrue( "bit 4 too much", !s7.contains( 4 ) );
// Assert.assertTrue( "bit 5 not found", s7.contains( 5 ) );
// Assert.assertTrue( "bit 23 not found", s7.contains( 23 ) );
// Assert.assertTrue( "bit 50 too much", !s7.contains( 50 ) );
}
}