Ejemplo n.º 1
0
        private void CreateColumns()
        {
            treeListView.CanExpandGetter = x => ((TestNode)x).Children.Count > 0;
            treeListView.ChildrenGetter  = x => ((TestNode)x).Children;

            var nameColumn = new OLVColumn("Name", "Name");

            nameColumn.AspectGetter = x =>
            {
                var node = ((TestNode)x);
                if (node.TestFixture != null)
                {
                    return(node.TestFixture.Name + " (" + node.TestFixture.Tests.Count + ")");
                }
                else if (node.Script != null)
                {
                    return(node.Script.Name);
                }
                else
                {
                    return(node.ToString());
                }
            };

            nameColumn.ImageGetter += delegate(object x)
            {
                var node    = (TestNode)x;
                var fixture = node.TestFixture ?? node.Parent.TestFixture;

                if (node.TestFixture != null)
                {
                    return((int)TestRunnerManager.GetFixtureStatus(fixture));
                }
                else
                {
                    var tuple = new Tuple <string, string>(fixture.Name, node.Script.Name);

                    TestRunnerManager.TestStatusDictionary.TryGetValue(tuple, out TestStatus status);

                    return((int)status);
                }
            };

            treeListView.FormatCell += UpdateFontsTreeListView;

            treeListView.UseCellFormatEvents = true;

            nameColumn.Width = treeListView.Width;
            treeListView.Columns.Add(nameColumn);
        }