Exemplo n.º 1
0
        /// <summary>
        /// Gets the unique ID for the test case.
        /// </summary>
        private string GetUniqueID(ITestMethod testMethod)
        {
            if (testMethod is null)
            {
                throw new ArgumentNullException(nameof(testMethod));
            }

            using (var stream = new MemoryStream())
            {
                var assemblyName = testMethod.TestClass.TestCollection.TestAssembly.Assembly.Name;

                //Get just the assembly name (without version info) when obtained by reflection
                if (testMethod.TestClass.TestCollection.TestAssembly.Assembly is IReflectionAssemblyInfo assembly)
                {
                    assemblyName = assembly.Assembly.GetName().Name;
                }

                Write(stream, assemblyName);
                Write(stream, testMethod.TestClass.Class.Name);
                Write(stream, TestNumber.ToString(CultureInfo.InvariantCulture));

                stream.Position = 0;

                var hash = new byte[20];
                var data = stream.ToArray();

                var hasher = new Sha1Digest();
                hasher.BlockUpdate(data, 0, data.Length);
                hasher.DoFinal(hash, 0);

                return(BytesToHexString(hash));
            }
Exemplo n.º 2
0
 //	combined together
 public static T Parse(string s)
 {
     if (!TestNumber.IsMatch(s))
     {
         throw new FormatException("Not a number");
     }
     return(ParseMethod(s, Styles, CultureInfo.InvariantCulture));
 }
Exemplo n.º 3
0
        //this will enable Tests to be campared with a Test
        public int CompareTo(Test obj)
        {
            if (TestNumber == null)
            {
                return(-1);
            }

            return(TestNumber.CompareTo(obj.TestNumber));
        }
Exemplo n.º 4
0
            private static string FormatNumber(TestNumber number)
            {
                string formattedNumber = "";

                for (int i = 0; i < number.Depth(); ++i)
                {
                    formattedNumber += number.Part(i).ToString() + ".";
                }

                return(formattedNumber);
            }
Exemplo n.º 5
0
 static bool TestAllNumbers(TestNumber test, int[] numbers)
 {
     foreach (int num in numbers)
     {
         if (!test(num))
         {
             return(false);
         }
     }
     return(true);
 }
Exemplo n.º 6
0
        public void ShouldCastValue()
        {
            //Arrange
            Number subject = new TestNumber(1);

            //Act
            double actual = subject;

            //Assert
            actual.Should().Be(1);
        }
Exemplo n.º 7
0
            public void Append(Test test)
            {
                // We need to update the number of the test
                if (m_tests.Count == 0)
                {
                    TestNumber newNumber = new TestNumber();
                    test.Information.Number = newNumber.DeeperNumber();
                }
                else
                {
                    TestNumber newNumber = m_tests[m_tests.Count - 1].Number();
                    test.Information.Number = newNumber.Increment();
                }

                m_tests.Add(test);
            }
Exemplo n.º 8
0
        private void AddTriangle_Click(object sender, EventArgs e)
        {
            TestNumber a1 = new TestNumber(a.Text);
            TestNumber b1 = new TestNumber(b.Text);
            TestNumber c1 = new TestNumber(c.Text);

            if ((a1.TestNum() && b1.TestNum() && c1.TestNum()) == true)
            {
                Triangle tang = new Triangle
                {
                    a = Convert.ToSingle(a1.num),
                    b = Convert.ToSingle(b1.num),
                    c = Convert.ToSingle(c1.num)
                };

                tang.TestTang();
            }
        }
Exemplo n.º 9
0
        public void IsTestNumber_NumberDivisibleByThree_True()
        {
            TestNumber testTestNumber = new TestNumber();

            Assert.AreEqual("Ping", testTestNumber.IsTestNumber(9));
        }
Exemplo n.º 10
0
        public void IsTestNumber_NumberDivisibleByFive_True()
        {
            TestNumber testTestNumber = new TestNumber();

            Assert.AreEqual("Pong", testTestNumber.IsTestNumber(12));
        }
Exemplo n.º 11
0
 public Test(TestNumber number, string name)
 {
     Information = new TestInformation(number, name);
     Result      = new TestResult();
 }
Exemplo n.º 12
0
 public TestSequence(TestNumber number, string name)
     : base(number, name)
 {
 }
Exemplo n.º 13
0
 public TestInformation(TestNumber number, string name)
 {
     Number = number;
     Name   = name;
 }
Exemplo n.º 14
0
 public void DemoIsNumberPalindrome()
 {
     Result = TestNumber.IsPalindrome().ToString();
 }
Exemplo n.º 15
0
        public bool addTest(Test test)
        {
            ConfigRoot = XElement.Load(ConfigPath);

            //ConfigRoot.Element("TestNumber").Value = (int.Parse(ConfigRoot.Element("TestNumber").Value) + 1).ToString();
            //ConfigRoot.Save(ConfigPath);

            int TestNumber;

            // Load the most recently used TestNumber
            XElement numbElement = ConfigRoot.Element("TestNumber");

            // Make sure the element exists

            /*
             * if (numbElement == null)
             * {
             *  TestNumber = 0;
             * }
             * // Get the value from the element
             * else
             * {
             *  string valString = numbElement.Value;
             *  TestNumber = (valString == null) ? 0 : int.Parse(valString);
             * }*/

            TestNumber = int.Parse(ConfigRoot.Element("TestNumber").Value) + 1;

            // Save it to make sure we don't go around the loop too many times
            int counter = TestNumber;

            // Find an available valid number
            while (GetTestByNumber(String.Format("{0:D8}", TestNumber)) != null)
            {
                // Increas the number
                TestNumber = TestNumber + 1;

                // Avoid Int over flow by restricting to 8 digits
                if (TestNumber > 99999999)
                {
                    TestNumber = 0;
                }

                // Catch if we have gone around all the possible numbers and still have no answer
                if (TestNumber == counter)
                {
                    throw new Exception("No avialable Test Number");
                }
            }

            // Save the number to XML
            //ConfigRoot.Element("TestNumber").Value = int.Parse(ConfigRoot.Element("TestNumber").Value).ToString();
            ConfigRoot.Element("TestNumber").Value = TestNumber.ToString();
            ConfigRoot.Save(ConfigPath);

            // Add the number to the test and save
            test.TestNumber = String.Format("{0:D8}", TestNumber);
            TestsRoot.Add(ConvertTest(test));
            TestsRoot.Save(TestsPath);
            return(true);
        }