-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtests-report.html
More file actions
109 lines (106 loc) · 4.18 KB
/
tests-report.html
File metadata and controls
109 lines (106 loc) · 4.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<title>Test Report — zcloudpass-app</title>
<style>
body{background:#0f1724;color:#e6eef8;font-family:Inter,ui-sans-serif,system-ui,Segoe UI,Roboto,"Helvetica Neue",Arial;margin:0;padding:24px}
.card{background:#0b1220;border-radius:8px;padding:20px;box-shadow:0 6px 18px rgba(2,6,23,0.7);max-width:980px;margin:12px auto}
h1{font-size:18px;margin:0 0 8px;color:#fff}
.meta{color:#9fb0c8;font-size:13px;margin-bottom:16px}
table{width:100%;border-collapse:collapse;margin-top:12px}
th,td{padding:10px 12px;text-align:left;border-bottom:1px solid rgba(255,255,255,0.04);font-size:13px}
th{color:#9fb0c8;font-weight:600;background:linear-gradient(180deg,rgba(255,255,255,0.01),transparent)}
td.status{font-weight:700}
.pass{color:#6ee7b7}
.fail{color:#ff8b8b}
.summary{display:flex;gap:16px;margin-top:16px}
.summary .item{background:rgba(255,255,255,0.02);padding:10px 14px;border-radius:8px}
.muted{color:#9fb0c8;font-size:13px}
a.coverage{color:#93c5fd;text-decoration:none}
code{background:rgba(255,255,255,0.03);padding:2px 6px;border-radius:4px;color:#cfe9ff}
</style>
</head>
<body>
<div class="card">
<h1>Project Test Report</h1>
<div class="meta">
Tool Used: Vitest (jsdom) — Files Tested: test suites under <code>tests/</code> — Report generated automatically
</div>
<table>
<thead>
<tr>
<th>Test Case</th>
<th>File</th>
<th>Expected Output</th>
<th>Status</th>
</tr>
</thead>
<tbody>
<tr>
<td>Lib — Crypto</td>
<td>tests/lib/crypto.test.ts</td>
<td>Encrypt/decrypt behavior — pass edge cases</td>
<td class="status pass">PASS</td>
</tr>
<tr>
<td>Lib — API client</td>
<td>tests/lib/api.test.ts</td>
<td>Register/login/vault client calls</td>
<td class="status pass">PASS</td>
</tr>
<tr>
<td>Lib — Utils</td>
<td>tests/lib/utils.test.ts</td>
<td>Utility functions</td>
<td class="status pass">PASS</td>
</tr>
<tr>
<td>Test Setup</td>
<td>tests/setup.test.ts</td>
<td>Environment shims (ResizeObserver, etc.)</td>
<td class="status pass">PASS</td>
</tr>
<tr>
<td>Component — Login</td>
<td>tests/components/Login.test.tsx</td>
<td>Render + mock interactions</td>
<td class="status pass">PASS</td>
</tr>
<tr>
<td>Component — Register</td>
<td>tests/components/Register.test.tsx</td>
<td>Render + password strength + submit</td>
<td class="status pass">PASS</td>
</tr>
<tr>
<td>Component — Vault</td>
<td>tests/components/Vault.test.tsx</td>
<td>Vault listing & decrypt flows (mocked)</td>
<td class="status pass">PASS</td>
</tr>
<tr>
<td>Component — Password Generator</td>
<td>tests/components/Passwordgenerator.test.tsx</td>
<td>Generation, copy, use-password handlers</td>
<td class="status pass">PASS</td>
</tr>
<tr>
<td>Component — Settings</td>
<td>tests/components/Settings.test.tsx</td>
<td>Change password + UI pieces</td>
<td class="status pass">PASS</td>
</tr>
</tbody>
</table>
<div class="summary">
<div class="item"><div class="muted">Total Tests</div><div style="font-weight:700">115</div></div>
<div class="item"><div class="muted">Passed</div><div style="color:#6ee7b7;font-weight:700">115</div></div>
<div class="item"><div class="muted">Failed</div><div style="color:#ff8b8b;font-weight:700">0</div></div>
<div class="item"><div class="muted">Execution Time</div><div style="font-weight:700">~7.5s</div></div>
</div>
<p class="muted" style="margin-top:14px">Coverage report: <a class="coverage" href="coverage/index.html">coverage/index.html</a></p>
</div>
</body>
</html>