コード例 #1
0
ファイル: TestClassInfo.cs プロジェクト: Carbonfrost/f-spec
 internal static void AddTestMethods(Type testType, TestUnitCollection addTo)
 {
     foreach (var m in testType.GetRuntimeMethods())
     {
         try {
             var myCase = CreateTest(m);
             if (myCase != null)
             {
                 addTo.Add(myCase);
             }
         } catch (Exception ex) {
             addTo.Add(SkippedInitFailure.CreateTestUnitFactoryProblem(m, ex));
         }
     }
     foreach (var p in testType.GetRuntimeProperties())
     {
         try {
             var myCase = CreateTest(p);
             if (myCase != null)
             {
                 addTo.Add(myCase);
             }
         } catch (Exception ex) {
             addTo.Add(SkippedInitFailure.CreateTestUnitFactoryProblem(p.GetMethod, ex));
         }
     }
 }
コード例 #2
0
        protected override void Initialize(TestContext testContext)
        {
            Metadata.Apply(testContext);

            int index = 0;

            foreach (var attr in TestDataProviders)
            {
                var    factory      = GetTestCaseFactory(attr);
                string providerName = null;
                if (attr is ITestDataApiAttributeConventions conv)
                {
                    providerName = conv.Name;
                }

                IEnumerable <TestData> data = null;
                try {
                    data = attr.GetData(testContext);
                } catch (Exception ex) {
                    Children.Add(SkippedInitFailure.DataProviderProblem(this, attr.ToString(), TestMethod, ex));
                }

                if (data == null)
                {
                    continue;
                }
                var allData = data.ToList();
                foreach (var row in allData)
                {
                    var caseUnit = factory.CreateTestCase(TestMethod, new TestDataInfo(row, providerName, index));
                    Children.Add(caseUnit);
                    index++;
                }
            }

            Metadata.ApplyDescendants(testContext, Descendants);
        }