//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldContainCompleteProfileFromFromLegacyVersions() public virtual void ShouldContainCompleteProfileFromFromLegacyVersions() { // Given using (Transaction tx = Db.beginTx()) { Db.createNode(); tx.Success(); } foreach (string version in new string[] { "2.3", "3.1", "3.4", "3.5" }) { // When Result result = Db.execute(string.Format("PROFILE CYPHER {0} MATCH (n) RETURN n", version)); result.ResultAsString(); Org.Neo4j.Graphdb.ExecutionPlanDescription_ProfilerStatistics stats = result.ExecutionPlanDescription.Children[0].ProfilerStatistics; // Then assertThat("Mismatching db-hits for version " + version, stats.DbHits, equalTo(2L)); assertThat("Mismatching rows for version " + version, stats.Rows, equalTo(1L)); //These stats are not available in older versions, but should at least return 0, and >0 for newer assertThat("Mismatching page cache hits for version " + version, stats.PageCacheHits, greaterThanOrEqualTo(0L)); assertThat("Mismatching page cache misses for version " + version, stats.PageCacheMisses, greaterThanOrEqualTo(0L)); assertThat("Mismatching page cache hit ratio for version " + version, stats.PageCacheHitRatio, greaterThanOrEqualTo(0.0)); } }
public ExecutionPlanDescriptionAnonymousInnerClass(string name, IDictionary <string, object> args, IList <string> identifiers, Org.Neo4j.Graphdb.ExecutionPlanDescription_ProfilerStatistics profile, ExecutionPlanDescription[] children) { this._name = name; this._args = args; this._identifiers = identifiers; this._profile = profile; this._children = children; }
internal TestExecutionPlanDescription(ExecutionPlanConverterTest outerInstance, string name, Org.Neo4j.Graphdb.ExecutionPlanDescription_ProfilerStatistics profilerStatistics, ISet <string> identifiers, IDictionary <string, object> arguments) { this._outerInstance = outerInstance; this.NameConflict = name; this.ProfilerStatisticsConflict = profilerStatistics; this.IdentifiersConflict = identifiers; this.ArgumentsConflict = arguments; }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test @SuppressWarnings("unchecked") public void shouldSerializeProfilingResult() throws Exception //JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: public virtual void ShouldSerializeProfilingResult() { // Given string name = "Kalle"; ExecutionPlanDescription plan = GetMockDescription(name); ExecutionPlanDescription childPlan = GetMockDescription("child"); when(plan.Children).thenReturn(asList(childPlan)); when(plan.HasProfilerStatistics()).thenReturn(true); Org.Neo4j.Graphdb.ExecutionPlanDescription_ProfilerStatistics stats = mock(typeof(Org.Neo4j.Graphdb.ExecutionPlanDescription_ProfilerStatistics)); when(stats.DbHits).thenReturn(13L); when(stats.Rows).thenReturn(25L); when(plan.ProfilerStatistics).thenReturn(stats); Result result = mock(typeof(Result)); //JAVA TO C# CONVERTER TODO TASK: Java iterators are only converted within the context of 'while' and 'for' loops: when(result.HasNext()).thenReturn(false); when(result.Columns()).thenReturn(new List <>()); when(result.ExecutionPlanDescription).thenReturn(plan); // When IDictionary <string, object> serialized = SerializeToStringThenParseAsToMap(new CypherResultRepresentation(result, false, true)); // Then IDictionary <string, object> serializedPlan = (IDictionary <string, object>)serialized["plan"]; assertThat(serializedPlan["name"], equalTo(name)); assertThat(serializedPlan["rows"], @is(25)); assertThat(serializedPlan["dbHits"], @is(13)); IList <IDictionary <string, object> > children = (IList <IDictionary <string, object> >)serializedPlan["children"]; assertThat(children.Count, @is(1)); IDictionary <string, object> args = (IDictionary <string, object>)serializedPlan["args"]; assertThat(args["argumentKey"], @is("argumentValue")); }
protected internal override void Serialize(MappingSerializer mappingSerializer) { //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final org.neo4j.graphdb.ExecutionPlanDescription planDescription = getPlan(); ExecutionPlanDescription planDescription = Plan; mappingSerializer.PutString("name", planDescription.Name); IDictionary <string, object> arguments = planDescription.Arguments; MappingRepresentation argsRepresentation = getMapRepresentation(arguments); mappingSerializer.PutMapping("args", argsRepresentation); if (planDescription.HasProfilerStatistics()) { Org.Neo4j.Graphdb.ExecutionPlanDescription_ProfilerStatistics stats = planDescription.ProfilerStatistics; mappingSerializer.PutNumber("rows", stats.Rows); mappingSerializer.PutNumber("dbHits", stats.DbHits); } mappingSerializer.PutList("children", new ListRepresentation("children", new IterableWrapperAnonymousInnerClass(this, planDescription.Children))); }
public static MapValue Convert(ExecutionPlanDescription plan) { bool hasProfilerStatistics = plan.HasProfilerStatistics(); int size = hasProfilerStatistics ? 9 : 4; MapValueBuilder @out = new MapValueBuilder(size); @out.Add("operatorType", stringValue(plan.Name)); @out.Add("args", ValueUtils.asMapValue(plan.Arguments)); @out.Add("identifiers", ValueUtils.asListValue(plan.Identifiers)); @out.Add("children", Children(plan)); if (hasProfilerStatistics) { Org.Neo4j.Graphdb.ExecutionPlanDescription_ProfilerStatistics profile = plan.ProfilerStatistics; @out.Add("dbHits", longValue(profile.DbHits)); @out.Add("pageCacheHits", longValue(profile.PageCacheHits)); @out.Add("pageCacheMisses", longValue(profile.PageCacheMisses)); @out.Add("pageCacheHitRatio", doubleValue(profile.PageCacheHitRatio)); @out.Add("rows", longValue(profile.Rows)); } return(@out.Build()); }
//JAVA TO C# CONVERTER WARNING: 'final' parameters are ignored unless the option to convert to C# 7.2 'in' parameters is selected: //ORIGINAL LINE: private static org.neo4j.graphdb.ExecutionPlanDescription plan(final String name, final java.util.Map<String,Object> args, final java.util.List<String> identifiers, final org.neo4j.graphdb.ExecutionPlanDescription_ProfilerStatistics profile, final org.neo4j.graphdb.ExecutionPlanDescription... children) private static ExecutionPlanDescription Plan(string name, IDictionary <string, object> args, IList <string> identifiers, Org.Neo4j.Graphdb.ExecutionPlanDescription_ProfilerStatistics profile, params ExecutionPlanDescription[] children) { return(new ExecutionPlanDescriptionAnonymousInnerClass(name, args, identifiers, profile, children)); }