public void EqualsDiffTypeTest()
        {
            var token = new ComplexNumberToken(new Complex(5.3, 2.1));

            Assert.False(token.Equals(1));
            Assert.NotEqual((object)1, token);
        }
        public void EqualsSameObjectTest()
        {
            var token = new ComplexNumberToken(new Complex(5.3, 2.1));

            Assert.True(token.Equals(token));
            Assert.Equal(token, token);
        }
        public void EqualsNullTest()
        {
            var token = new ComplexNumberToken(new Complex(5.3, 2.1));

            Assert.False(token.Equals(null));
            Assert.NotEqual(null, token);
        }
        public void EqualsDiffComplexTest()
        {
            var token1 = new ComplexNumberToken(new Complex(5.3, 2.1));
            var token2 = new ComplexNumberToken(new Complex(5.9, 43.1));

            Assert.False(token1.Equals(token2));
            Assert.NotEqual(token1, token2);
        }
        /// <summary>
        /// Creates the token.
        /// </summary>
        /// <param name="match">The match.</param>
        /// <param name="tokens">The tokens.</param>
        /// <returns>
        /// The token.
        /// </returns>
        protected override FactoryResult CreateTokenInternal(Match match, ReadOnlyCollection <IToken> tokens)
        {
            var magnitudeString = regexAllWhitespaces.Replace(match.Groups[1].Value, string.Empty);

            if (!DoubleTryParse(magnitudeString, out var magnitude))
            {
                magnitude = 0.0;
            }

            var phaseString = regexAllWhitespaces.Replace(match.Groups[2].Value, string.Empty).Replace("∠", "");

            if (!DoubleTryParse(phaseString, out var phase))
            {
                phase = 1.0;
            }

            var token = new ComplexNumberToken(Complex.FromPolarCoordinates(magnitude, phase * Math.PI / 180));

            return(new FactoryResult(token, match.Length));
        }
        public void PositiveReToStringTest()
        {
            var token = new ComplexNumberToken(new Complex(5.3, 2.12));

            Assert.Equal("Complex Number: 5.3+2.12i", token.ToString());
        }
        public void ZeroReToStringTest()
        {
            var token = new ComplexNumberToken(new Complex(0, 1.3));

            Assert.Equal("Complex Number: 1.3i", token.ToString());
        }
        public void NegativeImToStringTest()
        {
            var token = new ComplexNumberToken(new Complex(5.3, -2.12));

            Assert.Equal("Complex Number: 5.3-2.12i", token.ToString());
        }
        public void ZeroImToStringTest()
        {
            var token = new ComplexNumberToken(new Complex(5.3, 0));

            Assert.Equal("Complex Number: 5.3", token.ToString());
        }
示例#10
0
        public void ImNegOneToStringTest()
        {
            var token = new ComplexNumberToken(new Complex(0, -1));

            Assert.Equal("Complex Number: -i", token.ToString());
        }