コード例 #1
0
        internal TestNodeInternal(TestHost host, ITestParameter parameter = null, TestFlags?flags = null)
        {
            Host  = host;
            Flags = flags ?? host.Flags;

            Parameter = host.HasFixedParameter ? host.GetFixedParameter() : parameter;
        }
コード例 #2
0
ファイル: TestBuilder.cs プロジェクト: Roykens/web-tests
 protected TestBuilder(string identifier, string name, ITestParameter parameter)
 {
     Identifier = identifier;
     Name       = name;
     TestName   = name != null ? new TestName(name) : TestName.Empty;
     Parameter  = parameter;
 }
コード例 #3
0
 public TestPath Parameterize(ITestParameter parameter)
 {
     if (!IsParameterized)
     {
         throw new InternalErrorException();
     }
     return(new TestPath(Host, Parent, parameter));
 }
コード例 #4
0
        TestPathTreeNode Parameterize(ITestParameter parameter)
        {
            var newPath = Path.Parameterize(parameter);
            var newNode = new TestPathTreeNode(Tree, newPath, (TestNodeInternal)newPath.Node);

            newNode.parameterized = true;
            return(newNode);
        }
コード例 #5
0
 public override TestNode Parameterize(ITestParameter parameter)
 {
     if (!IsParameterized)
     {
         throw new InternalErrorException();
     }
     return(new TestNodeInternal(Host, parameter, Flags));
 }
コード例 #6
0
 protected TestBuilder(TestPathType type, string identifier, string name, ITestParameter parameter, TestFlags flags = DefaultFlags)
 {
     PathType   = type;
     Identifier = identifier;
     Name       = name;
     Flags      = flags;
     Parameter  = parameter;
 }
コード例 #7
0
ファイル: TestPathNode.cs プロジェクト: Roykens/web-tests
        TestPathNode Parameterize(ITestParameter parameter)
        {
            var newPath = Path.Parameterize(parameter);
            var newNode = new TestPathNode(Tree, newPath);

            newNode.parameterized = true;
            return(newNode);
        }
コード例 #8
0
        internal TestPath(TestHost host, TestPath parent, ITestParameter parameter = null)
        {
            Host   = host;
            Flags  = host.Flags;
            Parent = parent;

            this.parameter = host.HasFixedParameter ? host.GetFixedParameter() : parameter;
            this.name      = GetTestName(host, parent, this.parameter);
        }
コード例 #9
0
        internal T Deserialize(ITestParameter parameter)
        {
            if (Serializer != null)
            {
                return((T)Serializer.ParameterToObject(parameter));
            }

            return((T)parameter);
        }
コード例 #10
0
        internal T Deserialize(ITestParameter parameter)
        {
            var serialized = parameter;

            if (Serializer != null)
            {
                return((T)Serializer.ParameterToObject(serialized));
            }

            return((T)serialized);
        }
コード例 #11
0
        public FixedParameterHost(string name, TypeInfo type, IParameterSerializer serializer, FixedTestParameterAttribute attr, TestFlags flags)
            : base(name, type, serializer, flags)
        {
            Attribute = attr;

            if (Serializer != null)
            {
                fixedParameter = Serializer.ObjectToParameter(Attribute.Value);
            }
            else
            {
                fixedParameter = (ITestParameter)Attribute.Value;
            }
        }
コード例 #12
0
        public virtual void TestEnumDefault()
        {
            ITestObject obj = NewTestObject <Object1>();

            ITestAction a1 = obj.GetAction("Do Something Else");

            ITestParameter p1 = a1.Parameters.First();
            ITestParameter p2 = a1.Parameters.Last();

            ITestNaked def1 = p1.GetDefault();
            ITestNaked def2 = p2.GetDefault();

            Assert.AreEqual(TestEnum.Value2, def1.NakedObject.Object);
            Assert.AreEqual(null, def2);
        }
コード例 #13
0
ファイル: TestSerializer.cs プロジェクト: Roykens/web-tests
        static XElement WritePathNode(IPathNode node, ITestParameter parameter)
        {
            var element = new XElement(ParameterName);

            element.Add(new XAttribute("Identifier", node.Identifier));
            if (node.Name != null)
            {
                element.Add(new XAttribute("Name", node.Name));
            }
            if (node.ParameterType != null)
            {
                element.Add(new XAttribute("ParameterType", node.ParameterType));
            }
            if (parameter != null)
            {
                element.Add(new XAttribute("Parameter", parameter.Value));
            }
            return(element);
        }
コード例 #14
0
        static TestName GetTestName(TestHost host, TestPath parent, ITestParameter parameter = null)
        {
            var builder = new TestNameBuilder();

            if (parent != null)
            {
                builder.Merge(parent.name);
            }
            if (host.Name != null)
            {
                if (parameter != null && ((host.Flags & TestFlags.PathHidden) == 0))
                {
                    builder.PushParameter(host.Name, parameter.Value, (host.Flags & TestFlags.Hidden) != 0);
                }
                else if ((host.Flags & TestFlags.Hidden) == 0)
                {
                    builder.PushName(host.Name);
                }
            }
            return(builder.GetName());
        }
コード例 #15
0
 public ParameterSourceValue(ParameterizedTestInstance instance, ITestParameter parameter, object value)
     : base(instance, value)
 {
     this.parameter = parameter;
 }
コード例 #16
0
ファイル: TestNode.cs プロジェクト: stefb965/web-tests
 public override TestNode Parameterize(ITestParameter parameter)
 {
     throw new InternalErrorException();
 }
コード例 #17
0
 public object ParameterToObject(ITestParameter value)
 {
     return(((ParameterWrapper)value).Value);
 }
コード例 #18
0
ファイル: TestNode.cs プロジェクト: stefb965/web-tests
 public abstract TestNode Parameterize(ITestParameter parameter);
コード例 #19
0
 public FixedValue(FixedParameterInstance <T> instance, ITestParameter parameter, object value)
     : base(instance, value)
 {
     this.parameter = parameter;
 }
コード例 #20
0
ファイル: TestPath.cs プロジェクト: stefb965/web-tests
        public TestPath Parameterize(ITestParameter parameter)
        {
            var parameterized = Node.Parameterize(parameter);

            return(new TestPath(Parent, parameterized));
        }
コード例 #21
0
 internal TestNode CreateNode(ITestParameter parameter = null, TestFlags?flags = null)
 {
     return(new TestNodeInternal(this, parameter, flags));
 }