public void TestMultiExec() { var transaction = _api.Multi(); // transaction.SetAsync("x", "1"); transaction.QueryAsync("social", "CREATE (:Person {name:'a'})"); transaction.QueryAsync("g", "CREATE (:Person {name:'a'})"); // transaction.IncrAsync("x"); // transaction.GetAsync("x"); transaction.QueryAsync("social", "MATCH (n:Person) RETURN n"); transaction.DeleteGraphAsync("g"); transaction.CallProcedureAsync("social", "db.labels"); var results = transaction.Exec(); }
public void TestMultiExec() { var transaction = _api.Multi(); // transaction.SetAsync("x", "1"); transaction.QueryAsync("social", "CREATE (:Person {name:'a'})"); transaction.QueryAsync("g", "CREATE (:Person {name:'a'})"); // transaction.IncrAsync("x"); // transaction.GetAsync("x"); transaction.QueryAsync("social", "MATCH (n:Person) RETURN n"); transaction.DeleteGraphAsync("g"); transaction.CallProcedureAsync("social", "db.labels"); var results = transaction.Exec(); // Skipping Redis SET command assetions... // Redis Graph command var resultSet = results[0]; Assert.Equal(1, resultSet.Statistics.NodesCreated); Assert.Equal(1, resultSet.Statistics.PropertiesSet); resultSet = results[1]; Assert.Equal(1, resultSet.Statistics.NodesCreated); Assert.Equal(1, resultSet.Statistics.PropertiesSet); // Skipping Redis INCR command assertions... // Skipping Redis GET command assertions... // Graph Query Result resultSet = results[2]; Assert.NotNull(resultSet.Header); var header = resultSet.Header; var schemaNames = header.SchemaNames; var schemaTypes = header.SchemaTypes; Assert.NotNull(schemaNames); Assert.NotNull(schemaTypes); Assert.Single(schemaNames); Assert.Single(schemaTypes); Assert.Equal("n", schemaNames[0]); var nameProperty = new Property("name", "a"); var expectedNode = new Node(); expectedNode.Id = 0; expectedNode.AddLabel("Person"); expectedNode.AddProperty(nameProperty); // See that the result were pulled from the right graph. Assert.Single(resultSet); var record = resultSet.First(); Assert.Equal(new List <string> { "n" }, record.Keys); Assert.Equal(expectedNode, record.GetValue <Node>("n")); resultSet = results[4]; Assert.NotNull(resultSet.Header); schemaNames = header.SchemaNames; schemaTypes = header.SchemaTypes; Assert.NotNull(schemaNames); Assert.NotNull(schemaTypes); Assert.Single(schemaNames); Assert.Single(schemaTypes); Assert.Equal("n", schemaNames[0]); Assert.Single(resultSet); record = resultSet.First(); Assert.Equal(new List <string> { "label" }, record.Keys); Assert.Equal("Person", record.GetValue <string>("label")); }