(t *testing.T)
| 305 | } |
| 306 | |
| 307 | func TestVectorIndexDropPredicate(t *testing.T) { |
| 308 | conf := dgraphtest.NewClusterConfig().WithNumAlphas(1).WithNumZeros(1).WithReplicas(1).WithACL(time.Hour) |
| 309 | c, err := dgraphtest.NewLocalCluster(conf) |
| 310 | |
| 311 | require.NoError(t, err) |
| 312 | defer func() { c.Cleanup(t.Failed()) }() |
| 313 | require.NoError(t, c.Start()) |
| 314 | |
| 315 | gc, cleanup, err := c.Client() |
| 316 | require.NoError(t, err) |
| 317 | defer cleanup() |
| 318 | |
| 319 | require.NoError(t, gc.LoginIntoNamespace(context.Background(), |
| 320 | dgraphapi.DefaultUser, dgraphapi.DefaultPassword, x.RootNamespace)) |
| 321 | |
| 322 | hc, err := c.HTTPClient() |
| 323 | require.NoError(t, err) |
| 324 | require.NoError(t, hc.LoginIntoNamespace(dgraphapi.DefaultUser, |
| 325 | dgraphapi.DefaultPassword, x.RootNamespace)) |
| 326 | |
| 327 | require.NoError(t, gc.SetupSchema(testSchema)) |
| 328 | numVectors := 1000 |
| 329 | |
| 330 | // add vectors |
| 331 | rdfs, vectors := dgraphapi.GenerateRandomVectors(0, numVectors, 100, pred) |
| 332 | mu := &api.Mutation{SetNquads: []byte(rdfs), CommitNow: true} |
| 333 | _, err = gc.Mutate(mu) |
| 334 | require.NoError(t, err) |
| 335 | |
| 336 | require.NoError(t, gc.SetupSchema(testSchema)) |
| 337 | |
| 338 | for _, vect := range vectors { |
| 339 | similarVects, err := gc.QueryMultipleVectorsUsingSimilarTo(vect, pred, 2) |
| 340 | require.NoError(t, err) |
| 341 | require.Equal(t, 2, len(similarVects)) |
| 342 | } |
| 343 | |
| 344 | query := `{ |
| 345 | vector(func: has(project_description_v)) { |
| 346 | count(uid) |
| 347 | } |
| 348 | }` |
| 349 | |
| 350 | result, err := gc.Query(query) |
| 351 | require.NoError(t, err) |
| 352 | require.JSONEq(t, fmt.Sprintf(`{"vector":[{"count":%v}]}`, numVectors), string(result.GetJson())) |
| 353 | |
| 354 | // remove index from vector predicate |
| 355 | require.NoError(t, gc.SetupSchema(testSchemaWithoutIndex)) |
| 356 | |
| 357 | // drop predicate |
| 358 | op := &api.Operation{ |
| 359 | DropAttr: pred, |
| 360 | } |
| 361 | require.NoError(t, gc.Alter(context.Background(), op)) |
| 362 | |
| 363 | // generate random vectors |
| 364 | rdfs, vectors = dgraphapi.GenerateRandomVectors(0, numVectors, 100, pred) |
nothing calls this directly
no test coverage detected