func TestLookupJsonObject(t *testing.T) { log.Printf("In TestLookupJsonObject()") var indexName = "index_streetaddress" var bucketName = "default" addDocIfNotPresentInKV("User3bf51f08-0bac-4c03-bcec-5c255cbdde2c") addDocIfNotPresentInKV("Userbb48952f-f8d1-4e04-a0e1-96b9019706fb") time.Sleep(2 * time.Second) err := secondaryindex.CreateSecondaryIndex(indexName, bucketName, indexManagementAddress, "", []string{"address.streetaddress"}, false, nil, true, defaultIndexActiveTimeout, nil) FailTestIfError(err, "Error in creating the index", t) value := map[string]interface{}{ "doornumber": "12B", "floor": 5.0, "buildingname": "Sterling Heights", "streetname": "Hill Street"} docScanResults := datautility.ExpectedLookupResponse_json(docs, "address.streetaddress", value) scanResults, err := secondaryindex.Lookup(indexName, bucketName, indexScanAddress, []interface{}{value}, true, defaultlimit, c.SessionConsistency, nil) tc.PrintScanResults(docScanResults, "docScanResults") tc.PrintScanResults(scanResults, "scanResults") FailTestIfError(err, "Error in scan", t) err = tv.Validate(docScanResults, scanResults) FailTestIfError(err, "Error in scan result validation", t) }
func TestLookupObjDifferentOrdering(t *testing.T) { log.Printf("In TestLookupObjDifferentOrdering()") var indexName = "index_streetaddress" var bucketName = "default" err := secondaryindex.CreateSecondaryIndex(indexName, bucketName, indexManagementAddress, "", []string{"address.streetaddress"}, false, nil, true, defaultIndexActiveTimeout, nil) FailTestIfError(err, "Error in creating the index", t) value := map[string]interface{}{ "floor": 5.0, "streetname": "Hill Street", "buildingname": "Sterling Heights", "doornumber": "12B"} docScanResults := datautility.ExpectedLookupResponse_json(docs, "address.streetaddress", value) scanResults, err := secondaryindex.Lookup(indexName, bucketName, indexScanAddress, []interface{}{value}, true, defaultlimit, c.SessionConsistency, nil) tc.PrintScanResults(docScanResults, "docScanResults") tc.PrintScanResults(scanResults, "scanResults") FailTestIfError(err, "Error in scan", t) err = tv.Validate(docScanResults, scanResults) FailTestIfError(err, "Error in scan result validation", t) }