File tree Expand file tree Collapse file tree 2 files changed +32
-2
lines changed
src/org/cicirello/sequences/distance
tests/org/cicirello/sequences/distance Expand file tree Collapse file tree 2 files changed +32
-2
lines changed Original file line number Diff line number Diff line change @@ -813,12 +813,11 @@ static final class Node {
813813 }
814814
815815 static class BaseHT {
816- private final int MAX_SIZE ;
817816 protected final int mask ;
818817 protected final int minSize ;
819818
820819 BaseHT (int maxSize , int minSize ) {
821- MAX_SIZE = maxSize ;
820+ final int MAX_SIZE = maxSize ;
822821 if (minSize > MAX_SIZE ) {
823822 minSize = MAX_SIZE ;
824823 mask = minSize - 1 ;
Original file line number Diff line number Diff line change @@ -876,6 +876,37 @@ public void testKendallTauDistanceExceptions() {
876876 );
877877 }
878878
879+ @ Test
880+ public void testKendallTauSequenceDistance_HashTableBaseClass () {
881+ class TestHT extends KendallTauSequenceDistance .BaseHT {
882+ TestHT (int min ) {
883+ super (32 , min );
884+ }
885+ }
886+ for (int n = 1 ; n <= 32 ; n *= 2 ) {
887+ TestHT ht = new TestHT (n );
888+ assertEquals (n , ht .minSize );
889+ assertEquals (n -1 , ht .mask );
890+ }
891+ TestHT ht = new TestHT (3 );
892+ assertEquals (4 , ht .minSize );
893+ for (int n = 5 ; n < 8 ; n ++) {
894+ ht = new TestHT (n );
895+ assertEquals (8 , ht .minSize );
896+ assertEquals (7 , ht .mask );
897+ }
898+ for (int n = 9 ; n < 16 ; n ++) {
899+ ht = new TestHT (n );
900+ assertEquals (16 , ht .minSize );
901+ assertEquals (15 , ht .mask );
902+ }
903+ for (int n = 17 ; n <= 64 ; n ++) {
904+ ht = new TestHT (n );
905+ assertEquals (32 , ht .minSize );
906+ assertEquals (31 , ht .mask );
907+ }
908+ }
909+
879910 @ Test
880911 public void testKendallTauDistanceExceptionsDiffElements () {
881912 final KendallTauSequenceDistance d = new KendallTauSequenceDistance ();
You can’t perform that action at this time.
0 commit comments