List of usage examples for org.apache.lucene.document InetAddressPoint newPrefixQuery
public static Query newPrefixQuery(String field, InetAddress value, int prefixLength)
From source file:org.elasticsearch.index.mapper.IpFieldTypeTests.java
License:Apache License
public void testTermQuery() { MappedFieldType ft = createDefaultFieldType(); ft.setName("field"); String ip = "2001:db8::2:1"; assertEquals(InetAddressPoint.newExactQuery("field", InetAddresses.forString(ip)), ft.termQuery(ip, null)); ip = "192.168.1.7"; assertEquals(InetAddressPoint.newExactQuery("field", InetAddresses.forString(ip)), ft.termQuery(ip, null)); ip = "2001:db8::2:1"; String prefix = ip + "/64"; assertEquals(InetAddressPoint.newPrefixQuery("field", InetAddresses.forString(ip), 64), ft.termQuery(prefix, null)); ip = "192.168.1.7"; prefix = ip + "/16"; assertEquals(InetAddressPoint.newPrefixQuery("field", InetAddresses.forString(ip), 16), ft.termQuery(prefix, null)); ft.setIndexOptions(IndexOptions.NONE); IllegalArgumentException e = expectThrows(IllegalArgumentException.class, () -> ft.termQuery("::1", null)); assertEquals("Cannot search on field [field] since it is not indexed.", e.getMessage()); }