@@ -94,10 +94,14 @@ public void testRetrieveTopNDenseVectorFieldData() {
94
94
var values = valuesList .get (id );
95
95
assertEquals (id , values .get (0 ));
96
96
List <Float > vectors = (List <Float >) values .get (1 );
97
- assertNotNull (vectors );
98
- assertEquals (vector .size (), vectors .size ());
99
- for (int i = 0 ; i < vector .size (); i ++) {
100
- assertEquals (vector .get (i ), vectors .get (i ), 0F );
97
+ if (vector == null ) {
98
+ assertNull (vectors );
99
+ } else {
100
+ assertNotNull (vectors );
101
+ assertEquals (vector .size (), vectors .size ());
102
+ for (int i = 0 ; i < vector .size (); i ++) {
103
+ assertEquals (vector .get (i ), vectors .get (i ), 0F );
104
+ }
101
105
}
102
106
});
103
107
}
@@ -117,12 +121,18 @@ public void testRetrieveDenseVectorFieldData() {
117
121
;
118
122
assertEquals (2 , value .size ());
119
123
Integer id = (Integer ) value .get (0 );
120
- List <Float > vector = (List <Float >) value .get (1 );
121
- assertNotNull (vector );
122
124
List <Float > expectedVector = indexedVectors .get (id );
123
- assertNotNull (expectedVector );
124
- for (int i = 0 ; i < vector .size (); i ++) {
125
- assertEquals (expectedVector .get (i ), vector .get (i ), 0F );
125
+ List <Float > vector = (List <Float >) value .get (1 );
126
+ if (expectedVector == null ) {
127
+ assertNull (vector );
128
+ } else {
129
+ assertNotNull (vector );
130
+ assertEquals (expectedVector .size (), vector .size ());
131
+ assertNotNull (vector );
132
+ assertNotNull (expectedVector );
133
+ for (int i = 0 ; i < vector .size (); i ++) {
134
+ assertEquals (expectedVector .get (i ), vector .get (i ), 0F );
135
+ }
126
136
}
127
137
});
128
138
}
@@ -168,11 +178,16 @@ public void setup() throws IOException {
168
178
IndexRequestBuilder [] docs = new IndexRequestBuilder [numDocs ];
169
179
for (int i = 0 ; i < numDocs ; i ++) {
170
180
List <Float > vector = new ArrayList <>(numDims );
171
- for (int j = 0 ; j < numDims ; j ++) {
172
- vector .add (randomFloat ());
181
+ if (rarely ()) {
182
+ docs [i ] = prepareIndex ("test" ).setId ("" + i ).setSource ("id" , String .valueOf (i ));
183
+ indexedVectors .put (i , null );
184
+ } else {
185
+ for (int j = 0 ; j < numDims ; j ++) {
186
+ vector .add (randomFloat ());
187
+ }
188
+ docs [i ] = prepareIndex ("test" ).setId ("" + i ).setSource ("id" , String .valueOf (i ), "vector" , vector );
189
+ indexedVectors .put (i , vector );
173
190
}
174
- docs [i ] = prepareIndex ("test" ).setId ("" + i ).setSource ("id" , String .valueOf (i ), "vector" , vector );
175
- indexedVectors .put (i , vector );
176
191
}
177
192
178
193
indexRandom (true , docs );
0 commit comments