public void Compare () { Assert.IsTrue (BuildEventContext.Invalid == BuildEventContext.Invalid, "#1"); Assert.IsFalse (BuildEventContext.Invalid != BuildEventContext.Invalid, "#2"); var inst = new BuildEventContext (0, 0, 0, 0); Assert.IsFalse (BuildEventContext.Invalid == inst, "#3"); Assert.IsTrue (BuildEventContext.Invalid != inst, "#4"); Assert.IsFalse (BuildEventContext.Invalid == null, "#5"); Assert.IsTrue (BuildEventContext.Invalid != null, "#6"); Assert.IsFalse (BuildEventContext.Invalid.Equals (null), "#7"); Assert.IsFalse (BuildEventContext.Invalid.Equals (inst), "#8"); Assert.IsTrue (BuildEventContext.Invalid.Equals (BuildEventContext.Invalid), "#9"); Assert.IsFalse (inst.Equals (null), "#10"); Assert.IsTrue (inst.Equals (inst), "#11"); Assert.IsFalse (inst.Equals (BuildEventContext.Invalid), "#12"); }
public void ExerciseBuildEventContext() { BuildEventContext parentBuildEventContext = new BuildEventContext(0, 0, 0, 0); BuildEventContext currentBuildEventContext = new BuildEventContext(0, 2, 1, 1); BuildEventContext currentBuildEventContextNode = new BuildEventContext(1, 0, 0, 0); BuildEventContext currentBuildEventContextTarget = new BuildEventContext(0, 1, 0, 0); BuildEventContext currentBuildEventContextPci = new BuildEventContext(0, 0, 1, 0); BuildEventContext currentBuildEventContextTask = new BuildEventContext(0, 0, 0, 1); BuildEventContext allDifferent = new BuildEventContext(1, 1, 1, 1); BuildEventContext allSame = new BuildEventContext(0, 0, 0, 0); ProjectStartedEventArgs startedEvent = new ProjectStartedEventArgs(-1, "Message", "HELP", "File", "Targets", null, null, parentBuildEventContext); startedEvent.BuildEventContext = currentBuildEventContext; Assert.Equal(0, parentBuildEventContext.GetHashCode()); // Node is different Assert.False(parentBuildEventContext.Equals(currentBuildEventContextNode)); // Target is different Assert.False(parentBuildEventContext.Equals(currentBuildEventContextTarget)); // PCI is different Assert.False(parentBuildEventContext.Equals(currentBuildEventContextPci)); // Task is different Assert.False(parentBuildEventContext.Equals(currentBuildEventContextTask)); // All fields are different Assert.False(parentBuildEventContext.Equals(allDifferent)); // All fields are same Assert.True(parentBuildEventContext.Equals(allSame)); // Compare with null Assert.False(parentBuildEventContext.Equals(null)); // Compare with self Assert.True(currentBuildEventContext.Equals(currentBuildEventContext)); Assert.False(currentBuildEventContext.Equals(new object())); Assert.NotNull(startedEvent.BuildEventContext); Assert.Equal(0, startedEvent.ParentProjectBuildEventContext.NodeId); Assert.Equal(0, startedEvent.ParentProjectBuildEventContext.TargetId); Assert.Equal(0, startedEvent.ParentProjectBuildEventContext.ProjectContextId); Assert.Equal(0, startedEvent.ParentProjectBuildEventContext.TaskId); Assert.Equal(0, startedEvent.BuildEventContext.NodeId); Assert.Equal(2, startedEvent.BuildEventContext.TargetId); Assert.Equal(1, startedEvent.BuildEventContext.ProjectContextId); Assert.Equal(1, startedEvent.BuildEventContext.TaskId); }