mirror of
https://github.com/danbulant/Cosmos
synced 2026-05-19 20:39:01 +00:00
64 lines
1.6 KiB
C#
64 lines
1.6 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Drawing;
|
|
using System.Data;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
|
|
namespace Cosmos.Kernel.LogTail.Handlers
|
|
{
|
|
public partial class TestLogHandler : LogHandler
|
|
{
|
|
private ListViewGroup _currentGroup;
|
|
|
|
public TestLogHandler()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
public override string Title
|
|
{
|
|
get
|
|
{
|
|
return "Test Cases";
|
|
}
|
|
}
|
|
|
|
public override void Clear()
|
|
{
|
|
if (InvokeRequired)
|
|
{
|
|
this.BeginInvoke(new Action(Clear));
|
|
return;
|
|
}
|
|
|
|
listView.Items.Clear();
|
|
}
|
|
|
|
private delegate void Handler(LogMessage message);
|
|
|
|
public override void HandleMessage(LogMessage message)
|
|
{
|
|
if (InvokeRequired)
|
|
{
|
|
this.BeginInvoke(new Handler(HandleMessage), message);
|
|
return;
|
|
}
|
|
|
|
if (message.Name == "TestCase_Started")
|
|
{
|
|
_currentGroup = new ListViewGroup(message["Name"]);
|
|
listView.Groups.Add(_currentGroup);
|
|
}
|
|
else if (message.Name == "TestCase")
|
|
{
|
|
ListViewItem item = new ListViewItem(message["Message"]);
|
|
item.ImageKey = message["Success"];
|
|
item.Group = _currentGroup;
|
|
listView.Items.Add(item);
|
|
}
|
|
}
|
|
}
|
|
}
|