Test fuzzy row filters.
()
| 1109 | |
| 1110 | /** Test fuzzy row filters. */ |
| 1111 | @Test |
| 1112 | public void fuzzyRowFilter() throws Exception { |
| 1113 | client.setFlushInterval(FAST_FLUSH); |
| 1114 | final PutRequest put1 = new PutRequest(table, "1 accept this", |
| 1115 | family, "q", "frfv1"); |
| 1116 | final PutRequest put2 = new PutRequest(table, "2 filter this", |
| 1117 | family, "q", "frfv2"); |
| 1118 | final PutRequest put3 = new PutRequest(table, "3 accept this", |
| 1119 | family, "q", "frfv3"); |
| 1120 | final PutRequest put4 = new PutRequest(table, "4 keep that", |
| 1121 | family, "q", "frfv4"); |
| 1122 | Deferred.group(Deferred.group(client.put(put1), client.put(put2)), |
| 1123 | Deferred.group(client.put(put3), client.put(put4))).join(); |
| 1124 | final Scanner scanner = client.newScanner(table); |
| 1125 | scanner.setFamily(family); |
| 1126 | scanner.setStartKey("1"); |
| 1127 | scanner.setStopKey("5"); |
| 1128 | ArrayList<FuzzyRowFilter.FuzzyFilterPair> filters = new |
| 1129 | ArrayList<FuzzyRowFilter.FuzzyFilterPair>(); |
| 1130 | filters.add(new FuzzyRowFilter.FuzzyFilterPair( |
| 1131 | new byte[]{'?',' ','a','c','c','e','p','t',' ','t','h','i','s'}, |
| 1132 | new byte[]{ 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 })); |
| 1133 | filters.add(new FuzzyRowFilter.FuzzyFilterPair( |
| 1134 | new byte[]{'?','?','?','?','?','?','?','?','?','t','h','a','t'}, |
| 1135 | new byte[]{ 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 0 , 0 , 0 , 0 })); |
| 1136 | scanner.setFilter(new FuzzyRowFilter(filters)); |
| 1137 | final ArrayList<ArrayList<KeyValue>> rows = scanner.nextRows().join(); |
| 1138 | assertSizeIs(3, rows); |
| 1139 | ArrayList<KeyValue> kvs = rows.get(0); |
| 1140 | assertSizeIs(1, kvs); |
| 1141 | assertEq("frfv1", kvs.get(0).value()); |
| 1142 | kvs = rows.get(1); |
| 1143 | assertSizeIs(1, kvs); |
| 1144 | assertEq("frfv3", kvs.get(0).value()); |
| 1145 | kvs = rows.get(2); |
| 1146 | assertSizeIs(1, kvs); |
| 1147 | assertEq("frfv4", kvs.get(0).value()); |
| 1148 | } |
| 1149 | |
| 1150 | /** Simple column prefix filter tests. */ |
| 1151 | @Test |
nothing calls this directly
no test coverage detected