public void Tree_Compare_SecondLastNodeRemoved_LastNodePropertyCollection() { var first = PrtgNode.Device(Device(), PrtgNode.Sensor(Sensor("First Sensor")), PrtgNode.PropertyCollection(PrtgNode.Property(3001, "name_", "test")) ); var second = PrtgNode.Device(Device(), PrtgNode.PropertyCollection(PrtgNode.Property(3001, "name_", "test")) ); ValidatePretty(first, second, new[] { "<Yellow>dc-1</Yellow>", "├──<Red>First Sensor</Red>", "└──Properties", " └──name_" }, new[] { "<Yellow>dc-1</Yellow>", "├──Properties", "│ └──name_", "└──<Green>First Sensor</Green>", }); }
public void Tree_Compare_Reduce_TreeDifference() { //We wanna make sure we're reducing on the TreeDifference, not the regular Difference. //If we're reducing on the regular Difference, dc-1/2 gets reduced to have no children, but //Servers doesn't have a difference so doesn't get replaced under Local Probe var first = PrtgNode.Probe(Probe("Local Probe"), PrtgNode.Group(Group("Servers"), PrtgNode.Device(Device("dc-1", 3001), PrtgNode.Sensor(Sensor("Sensor1", 4001), DefaultProperty ), PrtgNode.Sensor(Sensor("Sensor2", 4002)) ) ) ); var second = PrtgNode.Probe(Probe("Local Probe"), PrtgNode.Group(Group("Servers"), PrtgNode.Device(Device("dc-2", 3001), PrtgNode.Sensor(Sensor("Sensor1", 4001), DefaultProperty ), PrtgNode.Sensor(Sensor("Sensor2", 4002)) ) ) ); var comparison = first.CompareTo(second); var reduced = comparison.Reduce(); var list = reduced.DescendantNodesAndSelf().ToList(); Assert.AreEqual(3, list.Count); }
public void Tree_Builds_OrdersChildPositions() { var tree = PrtgNode.Probe(Probe(), PrtgNode.TriggerCollection( PrtgNode.Trigger(Trigger("Trigger1")), PrtgNode.Trigger(Trigger("Trigger2")) ), PrtgNode.Group(Group("Servers", position: 3)), PrtgNode.Device(Device("dc-1", position: 1), PrtgNode.Sensor(Sensor("Sensor2", position: 2)), PrtgNode.Sensor(Sensor("Sensor1", position: 1)) ), PrtgNode.Trigger(Trigger("Trigger3")), PrtgNode.Device(Device("dc-2", position: 2)) ); TreePrettyPrintTests.Validate(tree, new[] { "Local Probe", "├──dc-1", "│ ├──Sensor1", "│ └──Sensor2", "├──dc-2", "├──Servers", "├──Trigger1", "├──Trigger2", "└──Trigger3" }); }
public void Tree_Compare_SecondLastNodeRemoved_LastNodeTriggerCollection() { var first = PrtgNode.Device(Device(), PrtgNode.Sensor(Sensor("First Sensor")), PrtgNode.TriggerCollection(DefaultTrigger) ); var second = PrtgNode.Device(Device(), PrtgNode.TriggerCollection(DefaultTrigger) ); ValidatePretty(first, second, new[] { "<Yellow>dc-1</Yellow>", "├──<Red>First Sensor</Red>", "└──Triggers", " └──Email to Admin" }, new[] { "<Yellow>dc-1</Yellow>", "├──Triggers", "│ └──Email to Admin", "└──<Green>First Sensor</Green>" }); }
public void Tree_Compare_Include_None() { var first = PrtgNode.Device(Device(), PrtgNode.Sensor(Sensor("Sensor 1", 4001)) ); var second = PrtgNode.Device(Device(), PrtgNode.Sensor(Sensor("Sensor 2", 4001)) ); CompareCompared(first, second, new[] { TreeNodeDifference.None }, new[] { TreeNodeDifference.None, TreeNodeDifference.Name }, new[] { TreeNodeDifference.None, TreeNodeDifference.Name } ); }
public void Tree_PrettyPrint_Grouping() { var tree = PrtgNode.Device(Device(), PrtgNode.Sensor(Sensor(), PrtgNode.Trigger(Trigger()) ), PrtgNode.Sensor(Sensor()) ); var grouping = tree["VMware Datastore"]; var expected = new[] { "VMware Datastore", "└──Email to Admin", "VMware Datastore" }; Validate(grouping, expected); }
public void Tree_Compare_Include_HasChildren() { var first = PrtgNode.Group(Group(), PrtgNode.Device(Device("Device 1", 4001), PrtgNode.Sensor(Sensor()) ), PrtgNode.Device(Device("Device 3", 4003, position: 1)) ); var second = PrtgNode.Group(Group(), PrtgNode.Device(Device("Device 1", 4001)), PrtgNode.Device(Device("Device 3", 4003, position: 2)) ); CompareCompared(first, second, new[] { TreeNodeDifference.HasChildren }, new[] { TreeNodeDifference.None, TreeNodeDifference.HasChildren | TreeNodeDifference.NumberOfChildren, TreeNodeDifference.Removed, TreeNodeDifference.Position }, new[] { TreeNodeDifference.None, TreeNodeDifference.HasChildren, TreeNodeDifference.None, TreeNodeDifference.None } ); }
public void Tree_Compare_SecondLastNodeRemoved() { var first = PrtgNode.Device(Device(), PrtgNode.Sensor(Sensor("First Sensor")), PrtgNode.Sensor(Sensor("Second Sensor", 4002)) ); var second = PrtgNode.Device(Device(), PrtgNode.Sensor(Sensor("Second Sensor", 4002)) ); ValidatePretty(first, second, new[] { "<Yellow>dc-1</Yellow>", "├──<Red>First Sensor</Red>", "└──Second Sensor" }, new[] { "<Yellow>dc-1</Yellow>", "├──Second Sensor", "└──<Green>First Sensor</Green>" }); }
public void Tree_Compare_Position_Different() { var first = PrtgNode.Device(Device(), PrtgNode.Sensor(Sensor("Sensor 1", 4001, position: 1)), PrtgNode.Sensor(Sensor("Sensor 2", 4002, position: 2)) ); var second = PrtgNode.Device(Device(), PrtgNode.Sensor(Sensor("Sensor 2", 4002, position: 1)), PrtgNode.Sensor(Sensor("Sensor 1", 4001, position: 2)) ); ValidatePretty(first, second, new[] { "dc-1", "├──<Yellow>Sensor 1 (Position)</Yellow>", "└──<Yellow>Sensor 2 (Position)</Yellow>" }, new[] { "dc-1", "├──<Yellow>Sensor 2 (Position)</Yellow>", "└──<Yellow>Sensor 1 (Position)</Yellow>" }); }