|
40 | 40 | import org.elasticsearch.test.ESSingleNodeTestCase; |
41 | 41 |
|
42 | 42 | import java.io.IOException; |
| 43 | +import java.util.Collections; |
43 | 44 |
|
44 | 45 | public class NestedHelperTests extends ESSingleNodeTestCase { |
45 | 46 |
|
@@ -115,6 +116,36 @@ public void testMatchNo() { |
115 | 116 | assertFalse(new NestedHelper(mapperService).mightMatchNonNestedDocs(new MatchNoDocsQuery(), "nested_missing")); |
116 | 117 | } |
117 | 118 |
|
| 119 | + public void testTermsQuery() { |
| 120 | + Query termsQuery = mapperService.fullName("foo").termsQuery(Collections.singletonList("bar"), null); |
| 121 | + assertFalse(new NestedHelper(mapperService).mightMatchNestedDocs(termsQuery)); |
| 122 | + assertTrue(new NestedHelper(mapperService).mightMatchNonNestedDocs(termsQuery, "nested1")); |
| 123 | + assertTrue(new NestedHelper(mapperService).mightMatchNonNestedDocs(termsQuery, "nested2")); |
| 124 | + assertTrue(new NestedHelper(mapperService).mightMatchNonNestedDocs(termsQuery, "nested3")); |
| 125 | + assertTrue(new NestedHelper(mapperService).mightMatchNonNestedDocs(termsQuery, "nested_missing")); |
| 126 | + |
| 127 | + termsQuery = mapperService.fullName("nested1.foo").termsQuery(Collections.singletonList("bar"), null); |
| 128 | + assertTrue(new NestedHelper(mapperService).mightMatchNestedDocs(termsQuery)); |
| 129 | + assertFalse(new NestedHelper(mapperService).mightMatchNonNestedDocs(termsQuery, "nested1")); |
| 130 | + assertTrue(new NestedHelper(mapperService).mightMatchNonNestedDocs(termsQuery, "nested2")); |
| 131 | + assertTrue(new NestedHelper(mapperService).mightMatchNonNestedDocs(termsQuery, "nested3")); |
| 132 | + assertTrue(new NestedHelper(mapperService).mightMatchNonNestedDocs(termsQuery, "nested_missing")); |
| 133 | + |
| 134 | + termsQuery = mapperService.fullName("nested2.foo").termsQuery(Collections.singletonList("bar"), null); |
| 135 | + assertTrue(new NestedHelper(mapperService).mightMatchNestedDocs(termsQuery)); |
| 136 | + assertTrue(new NestedHelper(mapperService).mightMatchNonNestedDocs(termsQuery, "nested1")); |
| 137 | + assertTrue(new NestedHelper(mapperService).mightMatchNonNestedDocs(termsQuery, "nested2")); |
| 138 | + assertTrue(new NestedHelper(mapperService).mightMatchNonNestedDocs(termsQuery, "nested3")); |
| 139 | + assertTrue(new NestedHelper(mapperService).mightMatchNonNestedDocs(termsQuery, "nested_missing")); |
| 140 | + |
| 141 | + termsQuery = mapperService.fullName("nested3.foo").termsQuery(Collections.singletonList("bar"), null); |
| 142 | + assertTrue(new NestedHelper(mapperService).mightMatchNestedDocs(termsQuery)); |
| 143 | + assertTrue(new NestedHelper(mapperService).mightMatchNonNestedDocs(termsQuery, "nested1")); |
| 144 | + assertTrue(new NestedHelper(mapperService).mightMatchNonNestedDocs(termsQuery, "nested2")); |
| 145 | + assertTrue(new NestedHelper(mapperService).mightMatchNonNestedDocs(termsQuery, "nested3")); |
| 146 | + assertTrue(new NestedHelper(mapperService).mightMatchNonNestedDocs(termsQuery, "nested_missing")); |
| 147 | + } |
| 148 | + |
118 | 149 | public void testTermQuery() { |
119 | 150 | Query termQuery = mapperService.fullName("foo").termQuery("bar", null); |
120 | 151 | assertFalse(new NestedHelper(mapperService).mightMatchNestedDocs(termQuery)); |
|
0 commit comments