Beispiel #1
0
        public void TestDegreeToGradian()
        {
            Degree degree  = new Degree(90);
            double gradian = new GradianConverter().Convert(degree);

            Assert.IsTrue(gradian == 100);

            //By using base degree
            Angles.Degree degree1  = new Angles.Degree(90);
            double        gradian2 = new GradianConverter().Convert(degree);

            Assert.IsTrue(gradian2 == 100);
        }
Beispiel #2
0
        public static bool TryParse(string input, out IAngle output)
        {
            #region Prepare Variables
            string capInput   = input.ToUpperInvariant();
            string extraction = input.ExtractNumberComponentFromMeasurementString();
            double conversion = 0;
            #endregion

            #region Convert To Double
            bool failed = !double.TryParse(extraction, out conversion);
            if (failed)
            {
                Debug.AddDetailMessage("Measurement Input not successfully converted.");
                Debug.AddDetailMessage("----" + capInput);
                output = new Angles.Degree(0);
                return(false);
            }
            #endregion
            #endregion
            #region Convert To Angle
            if (capInput.EndsWithAny(Suffixes.Degree))
            {
                output = new Angles.Degree(conversion);
                return(true);
            }
            if (capInput.EndsWithAny(Suffixes.Gradian))
            {
                output = new Angles.Gradian(conversion);
                return(true);
            }
            if (capInput.EndsWithAny(Suffixes.Radian))
            {
                output = new Angles.Radian(conversion);
                return(true);
            }
            #endregion
            #region ... Conversion
            #region Type Unrecognised
            Debug.AddDetailMessage("No Type for input angle conversion. Break here for details...");
            Debug.AddDetailMessage("----" + capInput);
            output = new Angles.Degree(0);
            return(false);

            #endregion
        }
Beispiel #3
0
        public void TestDegreeToRadiant()
        {
            Degree degree  = new Degree(90);
            double radiant = new RadiantConverter().Convert(degree);

            Assert.IsTrue(radiant > 1.5 && radiant < 1.6);

            //TestDegreeToRadiantByCasting
            Degree  degree1  = new Degree(90);
            Radiant radiant1 = degree1;

            Assert.IsTrue(radiant1.Value > 1.5 && radiant1.Value < 1.6);

            //By using base degree
            Angles.Degree bDegree  = new Angles.Degree(90);
            Radiant       bRadiant = bDegree;

            Assert.IsTrue(bRadiant.Value > 1.5 && bRadiant.Value < 1.6);
        }
        public void MixedUnitTest()
        {
            Angles.Angle degree  = new Degree(30);
            Angles.Angle radiant = new Radiant(1);
            Angles.Angle gradian = new Gradian(50);

            Angles.Angle result = gradian + degree + radiant;

            Assert.IsTrue(result.Value > 140 && result.Value < 141);

            //By passing converter in base units
            Angles.Angle degree1  = new Angles.Degree(30, new DegreeConverter());
            Angles.Angle radiant1 = new Radiant(1, new RadiantConverter());
            Angles.Angle gradian1 = new Gradian(50);

            Angles.Angle result1 = gradian1 + degree1 + radiant1;

            Assert.IsTrue(result1.Value > 140 && result1.Value < 141);
        }