MCPcopy Index your code
hub / github.com/dgraph-io/dgraph / TestVectorDelete

Function TestVectorDelete

query/vector/vector_test.go:661–715  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

659}
660
661func TestVectorDelete(t *testing.T) {
662 pred := "vtest"
663 dropPredicate(pred)
664
665 setSchema(fmt.Sprintf(vectorSchemaWithIndex, pred, "4", "euclidean"))
666
667 numVectors := 1000
668 rdf, vectors := generateRandomVectors(numVectors, 10, "vtest")
669 require.NoError(t, addTriplesToCluster(rdf))
670
671 query := `{
672 vector(func: has(vtest)) {
673 count(uid)
674 }
675 }`
676
677 result := processQueryNoErr(t, query)
678 require.JSONEq(t, fmt.Sprintf(`{"data": {"vector":[{"count":%d}]}}`, numVectors), result)
679
680 allVectors, err := queryAllVectorsPred(t, "vtest")
681 require.NoError(t, err)
682
683 require.Equal(t, vectors, allVectors)
684
685 triples := strings.Split(rdf, "\n")
686
687 deleteTriple := func(idx int) string {
688 triple := triples[idx]
689
690 deleteTriplesInCluster(triple)
691 uid := strings.Split(triple, " ")[0]
692 query = fmt.Sprintf(`{
693 vector(func: uid(%s)) {
694 vtest
695 }
696 }`, uid[1:len(uid)-1])
697
698 result = processQueryNoErr(t, query)
699 require.JSONEq(t, `{"data": {"vector":[]}}`, result)
700 return triple
701
702 }
703
704 for i := 0; i < len(triples)-2; i++ {
705 triple := deleteTriple(i)
706 vector, err := querySingleVector(t, strings.Split(triple, `"`)[1], "vtest")
707 require.NoError(t, err)
708 require.Contains(t, allVectors, vector)
709 }
710
711 triple := deleteTriple(len(triples) - 2)
712 // after deleteing all vectors, we should get an empty array of vectors in response when we do silimar_to query
713 _, err = querySingleVectorError(t, strings.Split(triple, `"`)[1], "vtest", false)
714 require.NoError(t, err)
715}
716
717func TestVectorUpdate(t *testing.T) {
718 pred := "vtest"

Callers

nothing calls this directly

Calls 9

generateRandomVectorsFunction · 0.85
queryAllVectorsPredFunction · 0.85
querySingleVectorFunction · 0.85
querySingleVectorErrorFunction · 0.85
dropPredicateFunction · 0.70
setSchemaFunction · 0.70
addTriplesToClusterFunction · 0.70
processQueryNoErrFunction · 0.70
deleteTriplesInClusterFunction · 0.70

Tested by

no test coverage detected