Skip to content

Commit 47a95cc

Browse files
committed
closes #8
1 parent fd2dc8d commit 47a95cc

File tree

8 files changed

+199
-28
lines changed

8 files changed

+199
-28
lines changed

ExtentReports/ExtentReports.csproj

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -232,6 +232,9 @@
232232
<EmbeddedResource Include="Views\Html\Partials\Navbar.cshtml" />
233233
<EmbeddedResource Include="Views\Html\Partials\Head.cshtml" />
234234
<EmbeddedResource Include="Views\Html\Partials\Scripts.cshtml" />
235+
<EmbeddedResource Include="Views\Html\Exception.cshtml" />
236+
<EmbeddedResource Include="Views\Html\Partials\AttributesView.cshtml" />
237+
<EmbeddedResource Include="Views\Html\Tag.cshtml" />
235238
</ItemGroup>
236239
<ItemGroup>
237240
<None Include="Resources\Languages.txt" />

ExtentReports/Reporter/ExtentHtmlReporter.cs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,16 @@ public override void Flush(ReportAggregates reportAggregates)
3333
File.WriteAllText(Path.Combine(FolderSavePath, "index.html"), source);
3434
source = RazorEngineManager.Instance.Razor.RunCompile("Dashboard", typeof(ExtentHtmlReporter), this);
3535
File.WriteAllText(Path.Combine(FolderSavePath, "dashboard.html"), source);
36+
if (CategoryContext.Context.Count > 0)
37+
{
38+
source = RazorEngineManager.Instance.Razor.RunCompile("Tag", typeof(ExtentHtmlReporter), this);
39+
File.WriteAllText(Path.Combine(FolderSavePath, "tag.html"), source);
40+
}
41+
if (ExceptionInfoContext.Context.Count > 0)
42+
{
43+
source = RazorEngineManager.Instance.Razor.RunCompile("Exception", typeof(ExtentHtmlReporter), this);
44+
File.WriteAllText(Path.Combine(FolderSavePath, "exception.html"), source);
45+
}
3646
}
3747

3848
public override void Start()
@@ -46,8 +56,11 @@ private void AddTemplates()
4656
string[] templates = new string[]
4757
{
4858
"Dashboard",
59+
"Exception",
4960
"Index",
61+
"Tag",
5062
"Partials.Attributes",
63+
"Partials.AttributesView",
5164
"Partials.Head",
5265
"Partials.Log",
5366
"Partials.Navbar",

ExtentReports/Views/Html/Dashboard.cshtml

Lines changed: 1 addition & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -47,32 +47,7 @@
4747
<body class="dashboard-view">
4848
<div class="app">
4949
<div class="layout">
50-
<div class="header navbar">
51-
<div class="header-container">
52-
<div class="nav-logo">
53-
<a href="index.html">
54-
<img src="https://cdn.rawgit.com/extent-framework/extent-github-cdn/d74480e/commons/img/logo.png">
55-
</a>
56-
</div>
57-
<ul class="nav-left">
58-
<!--<li>
59-
<a class="sidenav-fold-toggler" href="#">
60-
<i class="fa fa-arrow-left"></i>
61-
</a>
62-
<a class="sidenav-expand-toggler" href="#">
63-
<i class="fa fa-arrow-right"></i>
64-
</a>
65-
</li>-->
66-
</ul>
67-
<ul class="nav-right">
68-
<li class="m-r-10">
69-
<a href="#">
70-
<span class="badge badge-primary">@Model.StartTime</span>
71-
</a>
72-
</li>
73-
</ul>
74-
</div>
75-
</div>
50+
@Include("Navbar")
7651
@Include("Sidenav")
7752
<div class="page-container">
7853
<div class="main-content">
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
@using RazorEngine
2+
@using RazorEngine.Templating
3+
4+
<!DOCTYPE html>
5+
<html>
6+
@Include("Head")
7+
<body class="attributes-view">
8+
<div class="app">
9+
<div class="layout">
10+
@Include("Navbar")
11+
@Include("Sidenav")
12+
<div class="page-container">
13+
<div class="main-content">
14+
<div class="avt-container row">
15+
<div class="test-list">
16+
<div class="test-list-tools">
17+
<ul class="tools pull-left">
18+
<li>
19+
<a href="">
20+
<span>Authors</span>
21+
</a>
22+
</li>
23+
</ul>
24+
<ul class="tools text-right">
25+
<li>
26+
<a href="#">
27+
<span class="badge badge-primary">@Model.ExceptionInfoContext.Context.Count</span>
28+
</a>
29+
</li>
30+
</ul>
31+
</div>
32+
<div class="avt-wrapper scrollable">
33+
<ul id="test-list-item" class="test-list-item">
34+
@foreach (var ex in Model.ExceptionInfoContext.Context)
35+
{
36+
@Include("AttributesView", ex)
37+
}
38+
</ul>
39+
</div>
40+
</div>
41+
<div class="test-content scrollable"></div>
42+
</div>
43+
</div>
44+
</div>
45+
</div>
46+
</div>
47+
@Include("Scripts")
48+
</body>
49+
</html>
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
<li class="test">
2+
<div>
3+
<div class="test-detail">
4+
<p class="name">@Model.Name</p>
5+
<p class="duration">
6+
@Model.Count tests
7+
</p>
8+
<span class="datetime">
9+
@if (Model.Passed > 0) { <span class='badge badge-success'>@Model.Passed</span> }
10+
@if (Model.Failed > 0) { <span class='badge badge-danger'>@Model.Failed</span> }
11+
@if (Model.Skipped > 0) { <span class='badge badge-warning'>@Model.Skipped</span> }
12+
@if (Model.Others > 0) { <span class='badge badge-info'>@Model.Others</span> }
13+
</span>
14+
</div>
15+
</div>
16+
<div class="test-content-detail">
17+
<div class="detail-head">
18+
<div class="p-v-10 d-inline-block">
19+
<div class="info">
20+
<h4>@Model.Name</h4>
21+
@if (Model.Passed > 0) { <span class='badge badge-success'>@Model.Passed passed</span> }
22+
@if (Model.Failed > 0) { <span class='badge badge-danger'>@Model.Failed failed</span> }
23+
@if (Model.Skipped > 0) { <span class='badge badge-warning'>@Model.Skipped skipped</span> }
24+
@if (Model.Others > 0) { <span class='badge badge-info'>@Model.Others others</span> }
25+
</div>
26+
</div>
27+
</div>
28+
<div class="detail-body m-t-20">
29+
<table class='table table-sm'>
30+
<thead>
31+
<tr>
32+
<th class="status-col">Status</th>
33+
<th class="timestamp-col">Timestamp</th>
34+
<th>TestName</th>
35+
</tr>
36+
</thead>
37+
<tbody>
38+
@foreach (var test in Model.TestCollection)
39+
{
40+
<tr>
41+
<td>
42+
<div class='status-avatar @test.Status.ToString().ToLower()-bg'>@test.Status</div>
43+
</td>
44+
<td>@test.StartTime.ToString("HH:mm:ss")</td>
45+
<td class='linked' test-id='@test.TestId'>
46+
@test.Name
47+
@if (test.Parent != null)
48+
{
49+
<div class="">
50+
<span class="badge badge-default">@test.Parent.Name</span>
51+
</div>
52+
}
53+
</td>
54+
</tr>
55+
}
56+
</tbody>
57+
</table>
58+
</div>
59+
</div>
60+
</li>

ExtentReports/Views/Html/Partials/Head.cshtml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,6 @@
44
<title>@Model.MasterConfig.GetValue("documentTitle")</title>
55
<link rel="shortcut icon" href="https://cdn.rawgit.com/extent-framework/extent-github-cdn/d74480e/commons/img/logo.png">
66
<link rel="stylesheet" href="https://cdn.rawgit.com/extent-framework/extent-github-cdn/93a1073/spark/css/styles.css" />
7-
<link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">
8-
<style>@Model.MasterConfig.GetValue("css") @Model.MasterConfig.GetValue("styles")</style>
7+
<link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">
8+
<style>@Model.MasterConfig.GetValue("css") @Model.MasterConfig.GetValue("styles")</style>
99
</head>

ExtentReports/Views/Html/Partials/Sidenav.cshtml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,28 @@
99
<span class="title">Tests</span>
1010
</a>
1111
</li>
12+
@if (Model.CategoryContext.Context.Count > 0)
13+
{
14+
<li class="nav-item">
15+
<a href="tag.html">
16+
<span class="icon-holder">
17+
<i class="fa fa-tag"></i>
18+
</span>
19+
<span class="title">Tag</span>
20+
</a>
21+
</li>
22+
}
23+
@if (Model.ExceptionInfoContext.Context.Count > 0)
24+
{
25+
<li class="nav-item">
26+
<a href="exception.html">
27+
<span class="icon-holder">
28+
<i class="fa fa-bug"></i>
29+
</span>
30+
<span class="title">Exception</span>
31+
</a>
32+
</li>
33+
}
1234
<li class="nav-item">
1335
<a href="dashboard.html">
1436
<span class="icon-holder">
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
@using RazorEngine
2+
@using RazorEngine.Templating
3+
4+
<!DOCTYPE html>
5+
<html>
6+
@Include("Head")
7+
<body class="attributes-view">
8+
<div class="app">
9+
<div class="layout">
10+
@Include("Navbar")
11+
@Include("Sidenav")
12+
<div class="page-container">
13+
<div class="main-content">
14+
<div class="avt-container row">
15+
<div class="test-list">
16+
<div class="test-list-tools">
17+
<ul class="tools pull-left">
18+
<li>
19+
<a href="">
20+
<span>Tags</span>
21+
</a>
22+
</li>
23+
</ul>
24+
<ul class="tools text-right">
25+
<li>
26+
<a href="#">
27+
<span class="badge badge-primary">@Model.CategoryContext.Context.Count</span>
28+
</a>
29+
</li>
30+
</ul>
31+
</div>
32+
<div class="avt-wrapper scrollable">
33+
<ul id="test-list-item" class="test-list-item">
34+
@foreach (var category in Model.CategoryContext.Context)
35+
{
36+
@Include("AttributesView", category)
37+
}
38+
</ul>
39+
</div>
40+
</div>
41+
<div class="test-content scrollable"></div>
42+
</div>
43+
</div>
44+
</div>
45+
</div>
46+
</div>
47+
@Include("Scripts")
48+
</body>
49+
</html>

0 commit comments

Comments
 (0)