loadNumericTypes();
Query query = Search.getSearchManager(cache).buildQueryBuilderForClass(NumericType.class).get().keyword().wildcard()
.onField("name").matching("*wildcard*").createQuery();
CacheQuery cacheQuery = Search.getSearchManager(cache).getQuery(query);
List<Object> found = cacheQuery.list();
Assert.assertEquals(3, found.size());
assert found.contains(type1);
assert found.contains(type2);
assert found.contains(type3);
query = Search.getSearchManager(cache).buildQueryBuilderForClass(NumericType.class).get().keyword().wildcard()
.onField("name").matching("nothing*").createQuery();
cacheQuery = Search.getSearchManager(cache).getQuery(query);
found = cacheQuery.list();
Assert.assertEquals(0, found.size());
NumericType type4 = new NumericType(35, 40);
type4.setName("nothing special.");
cache.put("otherKey", type4);
cacheQuery = Search.getSearchManager(cache).getQuery(query);
found = cacheQuery.list();
Assert.assertEquals(1, found.size());
assert found.contains(type4);
query = Search.getSearchManager(cache).buildQueryBuilderForClass(NumericType.class).get().keyword().wildcard()
.onField("name").matching("*nothing*").createQuery();
cacheQuery = Search.getSearchManager(cache).getQuery(query);
found = cacheQuery.list();
Assert.assertEquals(2, found.size());
assert found.contains(type2);
assert found.contains(type4);
}