public static <S, K> KeyDefinition<S, K>[] toKeyDefinitions(KeyDefinitionBuilder<S, K>[] siblings) { KeyDefinition<S, K>[] keyDefinitions = new KeyDefinition[siblings.length]; for(KeyDefinitionBuilder<S, K> builder : siblings) { KeyDefinition<S, K> keyDefinition = new KeyDefinition<S, K>(toArray(builder.keyAndPredicates), builder.keySourceGetter, builder.index); keyDefinitions[builder.index]= keyDefinition; } return keyDefinitions; }
public static <S, K> KeyDefinition<S, K>[] toKeyDefinitions(KeyDefinitionBuilder<S, K>[] siblings) { KeyDefinition<S, K>[] keyDefinitions = new KeyDefinition[siblings.length]; for(KeyDefinitionBuilder<S, K> builder : siblings) { KeyDefinition<S, K> keyDefinition = new KeyDefinition<S, K>(toArray(builder.keyAndPredicates), builder.keySourceGetter, builder.index); keyDefinitions[builder.index]= keyDefinition; } return keyDefinitions; }
@Test public void testBreakDetector() throws Exception { KeySourceGetter<SampleFieldKey, Object> keySourceGetter = mock(KeySourceGetter.class); Object object = new Object(); SampleFieldKey key = new SampleFieldKey("k", 1); when(keySourceGetter.getValue(key, object)).thenReturn(new byte[] {1, 2}, new byte[] {1, 2}, new byte[] {1, 3}); KeyDefinition<Object, SampleFieldKey> keyDefinition = new KeyDefinition<Object, SampleFieldKey>( new KeyAndPredicate[] { new KeyAndPredicate<Object[], SampleFieldKey>(key, null) }, keySourceGetter, 0); BreakDetector<Object> breakDetector = new BreakDetector<Object>(keyDefinition); assertTrue(breakDetector.broke(object)); assertFalse(breakDetector.broke(object)); assertTrue(breakDetector.broke(object)); } }