Ejemplo n.º 1
0
        public void TestEquals()
        {
            var error1 = new CompilationError(ErrorSeverity.Error, "message", new ErrorRange(new ErrorPosition(1, 1), new ErrorPosition(1, 2)));
            var error2 = new CompilationError(ErrorSeverity.Error, "message", new ErrorRange(new ErrorPosition(1, 1), new ErrorPosition(1, 2)));
            var error3 = new CompilationError(ErrorSeverity.Warning, "message", new ErrorRange(new ErrorPosition(1, 1), new ErrorPosition(1, 2)));
            var error4 = new CompilationError(ErrorSeverity.Error, "different", new ErrorRange(new ErrorPosition(1, 1), new ErrorPosition(1, 2)));
            var error5 = new CompilationError(ErrorSeverity.Error, "message", new ErrorRange(new ErrorPosition(1, 2), new ErrorPosition(1, 3)));

            Assert.Equal(error1, error2);
            Assert.NotEqual(error1, error3);
            Assert.NotEqual(error1, error4);
            Assert.NotEqual(error1, error5);
            Assert.Equal(error1.GetHashCode(), error2.GetHashCode());
            Assert.NotEqual(error1.GetHashCode(), error3.GetHashCode());

            // ReSharper disable once EqualExpressionComparison
            Assert.True(error1.Equals(error1));
            Assert.False(error1.Equals(null));
            Assert.False(error1.Equals(new object()));
        }