示例#1
0
        TestContext(TestContext parent, TestName name, ITestPathInternal path, TestResult result)
        {
            Name        = name;
            this.parent = parent;
            this.path   = path;
            this.result = result;

            if (result != null)
            {
                logger = new TestLogger(TestLoggerBackend.CreateForResult(result, parent.logger));
            }
            else
            {
                logger = parent.logger;
            }

            config = parent.config;
        }
示例#2
0
        public bool TryGetParameter <T> (out T value, string name = null)
        {
            var path = Path;

            if (path == null)
            {
                AssertFail("Should never happen!");
                throw new SkipRestOfThisTestException();
            }

            while (path != null)
            {
                if (path.ParameterMatches <T> (name))
                {
                    value = path.GetParameter <T> ();
                    return(true);
                }

                path = path.Parent;
            }

            value = default(T);
            return(false);
        }
示例#3
0
 internal TestContext CreateChild(TestName name, ITestPathInternal path, TestResult result = null)
 {
     return(new TestContext(this, name, path, result));
 }