コード例 #1
0
        private void CollectTestGroup(TestGroup tests, TreeNode node)
        {
            var testNode = node.Tag as TestNode;

            if (testNode != null && testNode.CanRun())
            {
                if (testNode.Type == TestNode.TestCase)
                {
                    tests.Add(testNode);
                }
                else
                {
                    foreach (TreeNode treeNode in node.Nodes)
                    {
                        CollectTestGroup(tests, treeNode);
                    }
                }
            }
            else
            {
                var group = node.Tag as TestGroup;
                if (group != null)
                {
                    tests.AddRange(group);
                }
            }
        }
コード例 #2
0
        private void AddGroup(TestGroup group)
        {
            Groups.Add(group);

            Groups.Sort((x, y) =>
            {
                bool xNone = x.Name == "None";
                bool yNone = y.Name == "None";

                if (xNone && yNone)
                {
                    return(0);
                }

                if (xNone)
                {
                    return(1);
                }

                if (yNone)
                {
                    return(-1);
                }

                return(x.Name.CompareTo(y.Name));
            });
        }
コード例 #3
0
 public void CreateTestGroup()
 {
     _group = new TestGroup("NAME", 7);
     _group.Add(MakeTestNode("1", "Tom", "Runnable"));
     _group.Add(MakeTestNode("2", "Dick", "Explicit"));
     _group.Add(MakeTestNode("3", "Harry", "Runnable"));
 }
コード例 #4
0
ファイル: TestGroupTests.cs プロジェクト: Green-Bug/nunit-gui
 public void CreateTestGroup()
 {
     _group = new TestGroup("NAME", 7);
     _group.Add(MakeTestNode("1", "Tom", "Runnable"));
     _group.Add(MakeTestNode("2", "Dick", "Explicit"));
     _group.Add(MakeTestNode("3", "Harry", "Runnable"));
 }
コード例 #5
0
        private void RunTestGroup(IList <TreeNode> nodes)
        {
            var tests = new TestGroup("RunTests");

            foreach (TreeNode treeNode in nodes)
            {
                CollectTestGroup(tests, treeNode);
            }

            _model.RunTests(tests);
        }
コード例 #6
0
        protected TreeNode MakeTreeNode(TestGroup group, bool recursive)
        {
            TreeNode treeNode = new TreeNode(GroupDisplayName(group), group.ImageIndex, group.ImageIndex);

            treeNode.Tag = group;

            if (recursive)
            {
                foreach (TestNode test in group)
                {
                    treeNode.Nodes.Add(MakeTreeNode(test, true));
                }
            }

            return(treeNode);
        }
コード例 #7
0
        protected void AddGroup(TestGroup group)
        {
            Groups.Add(group);

            Groups.Sort((x, y) =>
            {
                bool xNone = x.Name == "None";
                bool yNone = y.Name == "None";

                if (xNone && yNone) return 0;

                if (xNone) return 1;

                if (yNone) return -1;

                return x.Name.CompareTo(y.Name);
            });
        }
コード例 #8
0
        // TODO: Move this to TestGroup? Would need access to results.
        public int CalcImageIndexForGroup(TestGroup group)
        {
            var groupIndex = -1;

            foreach (var testNode in group)
            {
                var result = GetResultForTest(testNode);
                if (result != null)
                {
                    var imageIndex = CalcImageIndex(result.Outcome);

                    if (imageIndex == TestTreeView.FailureIndex)
                        return TestTreeView.FailureIndex; // Early return - can't get any worse!

                    if (imageIndex >= TestTreeView.SuccessIndex) // Only those values propagate
                        groupIndex = Math.Max(groupIndex, imageIndex);
                }
            }

            return groupIndex;
        }
コード例 #9
0
        public override TestGroup[] SelectGroups(TestNode testNode)
        {
            List <TestGroup> groups = new List <TestGroup>();

            foreach (XmlNode node in testNode.Xml.SelectNodes("properties/property[@name='Category']"))
            {
                var groupName = node.Attributes["value"].Value;
                var group     = GetGroup(groupName);
                if (group == null)
                {
                    group = new TestGroup(groupName);
                    Groups.Add(group);
                    groups.Add(group);
                }
            }

            if (groups.Count == 0)
            {
                groups.Add(Groups[0]);
            }

            return(groups.ToArray());
        }
コード例 #10
0
        private void RunCheckedTests()
        {
            var tests = new TestGroup("RunTests");

            foreach (var treeNode in _view.Tree.CheckedNodes)
            {
                var testNode = treeNode.Tag as TestNode;
                if (testNode != null)
                {
                    tests.Add(testNode);
                }
                else
                {
                    var group = treeNode.Tag as TestGroup;
                    if (group != null)
                    {
                        tests.AddRange(group);
                    }
                }
            }

            _model.RunTests(tests);
        }
コード例 #11
0
        // TODO: Move this to TestGroup? Would need access to results.
        public int CalcImageIndexForGroup(TestGroup group)
        {
            var groupIndex = -1;

            foreach (var testNode in group)
            {
                var result = GetResultForTest(testNode);
                if (result != null)
                {
                    var imageIndex = CalcImageIndex(result.Outcome);

                    if (imageIndex == FailureIndex)
                    {
                        return(FailureIndex);       // Early return - can't get any worse!
                    }
                    if (imageIndex >= SuccessIndex) // Only those values propagate
                    {
                        groupIndex = Math.Max(groupIndex, imageIndex);
                    }
                }
            }

            return(groupIndex);
        }
コード例 #12
0
 public string GroupDisplayName(TestGroup group)
 {
     return(string.Format("{0} ({1})", group.Name, group.Count));
 }
コード例 #13
0
        protected override TestGroup[] SelectGroups(TestNode testNode)
        {
            List<TestGroup> groups = new List<TestGroup>();

            foreach (XmlNode node in testNode.Xml.SelectNodes("properties/property[@name='Category']"))
            {
                var groupName = node.Attributes["value"].Value;
                var group = Groups.Find((g) => g.Name == groupName);//GetGroup(groupName);
                if (group == null)
                {
                    group = new TestGroup(groupName);
                    Groups.Add(group);
                    groups.Add(group);
                }
            }

            if (groups.Count == 0)
                groups.Add(Groups[0]);

            return groups.ToArray();
        }
コード例 #14
0
        private void RunCheckedTests()
        {
            var tests = new TestGroup("RunTests");

            foreach (var treeNode in _view.Tree.CheckedNodes)
            {
                var testNode = treeNode.Tag as TestNode;
                if (testNode != null)
                    tests.Add(testNode);
                else
                {
                    var group = treeNode.Tag as TestGroup;
                    if (group != null)
                        tests.AddRange(group);
                }
            }

            _model.RunTests(tests);
        }
コード例 #15
0
 public string GroupDisplayName(TestGroup group)
 {
     return string.Format("{0} ({1})", group.Name, group.Count);
 }
コード例 #16
0
        protected TreeNode MakeTreeNode(TestGroup group, bool recursive)
        {
            TreeNode treeNode = new TreeNode(GroupDisplayName(group), group.ImageIndex, group.ImageIndex);
            treeNode.Tag = group;

            if (recursive)
                foreach (TestNode test in group)
                    treeNode.Nodes.Add(MakeTreeNode(test, true));

            return treeNode;
        }