View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one or more
3    * contributor license agreements.  See the NOTICE file distributed with
4    * this work for additional information regarding copyright ownership.
5    * The ASF licenses this file to You under the Apache License, Version 2.0
6    * (the "License"); you may not use this file except in compliance with
7    * the License.  You may obtain a copy of the License at
8    *
9    *      http://www.apache.org/licenses/LICENSE-2.0
10   *
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS,
13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   * See the License for the specific language governing permissions and
15   * limitations under the License.
16   */
17  package org.apache.commons.collections4.bloomfilter;
18  
19  public class DefaultCellProducerTest extends AbstractCellProducerTest {
20  
21      /** Make forEachIndex unordered and contain duplicates. */
22      private final int[] indices = {1, 2, 3, 5};
23      private final int[] values = {1, 4, 9, 25};
24  
25      @Override
26      protected CellProducer createEmptyProducer() {
27          return consumer -> true;
28      }
29  
30      @Override
31      protected CellProducer createProducer() {
32          return consumer -> {
33              for (int i = 0; i < indices.length; i++) {
34                  if (!consumer.test(indices[i], values[i] )) {
35                      return false;
36                  }
37              }
38              return true;
39          };
40      }
41  
42      @Override
43      protected int[] getExpectedIndices() {
44          return indices;
45      }
46  
47      @Override
48      protected int[] getExpectedValues() {
49          return values;
50      }
51  
52      @Override
53      protected int getForEachIndexBehaviour() {
54          // The default method has the same behavior as the forEachCount() method.
55          return 0;
56      }
57  }