예제 #1
0
        protected void 运行测试用例 <TTestCase>()
            where TTestCase : TestCase, new()
        {
            var testCase = new TTestCase();

            testCase.Run();

            _casesRunned.Add(typeof(TTestCase));
        }
예제 #2
0
        private void RunTest <TParsedData, TTestCase>()
            where TTestCase : ITestCase <TParsedData>, new()
            where TParsedData : ParsedData
        {
            var testCase = new TTestCase();
            var parser   = testCase.CreateParser();
            var span     = testCase.Input.ToSnapshotSpan();

            var parsed = parser.TryParse(span, out var actualResult);

            if (testCase.ExpectedResult == null)
            {
                parsed.Should().BeFalse();
            }
            else
            {
                parsed.Should().BeTrue();
            }

            actualResult.Should().BeEquivalentTo(testCase.ExpectedResult);
        }