public void Should_Execute_Batch_Of_Traversals(string graphName, GraphProtocol protocol) { if (graphName == BaseIntegrationTest.DefaultCoreGraphName && !TestDseVersion.VersionMatch( new Version(6, 8), TestClusterManager.DseVersion, Comparison.GreaterThanOrEqualsTo)) { Assert.Ignore("Test requires DSE 6.8"); } var g = DseGraph.Traversal(Session, new GraphOptions().SetName(graphName)); if (graphName == BaseIntegrationTest.DefaultCoreGraphName) { g = g.With("allow-filtering"); } var batch = DseGraph.Batch(new GraphOptions().SetName(graphName).SetWriteConsistencyLevel(ConsistencyLevel.LocalQuorum)); batch .Add(g.AddV("character").Property("name", "Matias").Property("age", 12).Property("tag", "batch1")) .Add(g.AddV("character").Property("name", "Olivia").Property("age", 8).Property("tag", "batch1")); var rs = Session.ExecuteGraph(batch); Assert.AreEqual(protocol, rs.GraphProtocol); var list = g.V().Has("character", "tag", "batch1").Values <string>("name").ToList(); CollectionAssert.AreEquivalent(new [] { "Matias", "Olivia" }, list); }
public static bool CheckDseVersion(Version version, Comparison comparison) { if (!TestClusterManager.IsDse) { return(false); } return(TestDseVersion.VersionMatch(version, TestClusterManager.DseVersion, comparison)); }
public static bool CheckCassandraVersion(bool requiresOss, Version version, Comparison comparison) { if (requiresOss && TestClusterManager.IsDse) { return(false); } var runningVersion = TestClusterManager.IsDse ? TestClusterManager.DseVersion : TestClusterManager.CassandraVersion; var expectedVersion = TestClusterManager.IsDse ? TestClusterManager.GetDseVersion(version) : version; return(TestDseVersion.VersionMatch(expectedVersion, runningVersion, comparison)); }
public static bool VersionMatch(TestDseVersion versionAttr, Version executingVersion) { //Compare them as integers var expectedVersion = new Version(versionAttr.Major, versionAttr.Minor, versionAttr.Build); var comparison = (Comparison)executingVersion.CompareTo(expectedVersion); if (comparison >= Comparison.Equal && versionAttr.Comparison == Comparison.GreaterThanOrEqualsTo) { return(true); } return(comparison == versionAttr.Comparison); }
public async Task Should_Execute_Batch_Of_Traversals_Asynchronously_With_Edges(string graphName, GraphProtocol protocol) { if (graphName == BaseIntegrationTest.DefaultCoreGraphName && !TestDseVersion.VersionMatch( new Version(6, 8), TestClusterManager.DseVersion, Comparison.GreaterThanOrEqualsTo)) { Assert.Ignore("Test requires DSE 6.8"); } var g = DseGraph.Traversal(Session, new GraphOptions().SetName(graphName)); if (graphName == BaseIntegrationTest.DefaultCoreGraphName) { g = g.With("allow-filtering"); } var batch = DseGraph.Batch(new GraphOptions().SetName(graphName).SetWriteConsistencyLevel(ConsistencyLevel.LocalQuorum)); batch .Add(g.AddV("character").Property("name", "Matias").Property("age", 12).Property("tag", "batch2")) .Add(g.AddV("character").Property("name", "Olivia").Property("age", 8).Property("tag", "batch2")) .Add(g.V().Has("name", "Matias").Has("tag", "batch2").AddE("knows").To( __.V().Has("name", "Olivia").Has("tag", "batch2"))); var rs = await Session.ExecuteGraphAsync(batch).ConfigureAwait(false); Assert.AreEqual(protocol, rs.GraphProtocol); var characters = g.V().Has("character", "tag", "batch2").Values <string>("name").ToList(); CollectionAssert.AreEquivalent(new [] { "Matias", "Olivia" }, characters); var knowsOut = g.V().Has("name", "Matias").Has("tag", "batch2") .Out("knows").Values <string>("name").ToList(); Assert.AreEqual(new [] { "Olivia" }, knowsOut); }