qunit
Version:
The powerful, easy-to-use testing framework.
480 lines (403 loc) • 8.38 kB
CSS
/*!
* QUnit 3.0.0
* https://qunitjs.com/
*
* Copyright OpenJS Foundation and other contributors
* Released under the MIT license
* https://jquery.org/license
*/
/**
* Resets
*/
body {
margin: 0;
padding: 0;
}
[id=qunit] * {
margin: 0;
padding: 0;
}
#qunit {
font-family: system-ui, sans-serif;
font-size: 13px;
line-height: 1.2;
background: #FFF;
color: #333;
}
/* Style our buttons in a simple way, uninfluenced by the styles
the tested app might load. Don't affect buttons in #qunit-fixture!
https://github.com/qunitjs/qunit/pull/1395
https://github.com/qunitjs/qunit/issues/1437 */
[id=qunit] button {
all: revert; /* best effort, modern browsers only */
cursor: pointer;
}
[id=qunit] button:disabled {
cursor: default;
}
/**
* Header
*/
#qunit-header {
padding: 13px;
color: #C2CCD1;
background-color: #1C1E24;
display: flex;
flex-flow: row wrap;
justify-content: space-between;
align-items: flex-end;
gap: 13px;
}
#qunit-header h1 {
flex-grow: 1;
font-size: 24px;
line-height: 1;
font-weight: 400;
}
#qunit-header a {
display: block;
text-decoration: none;
color: inherit;
}
#qunit-header a:hover,
#qunit-header a:focus {
color: #FFF;
}
#qunit-userAgent:after {
content: '; ' attr(data-useragent);
}
#qunit-banner {
--qunit-progress: 0%;
height: 5px;
background-image: linear-gradient(#0769AD, #0769AD);
background-repeat: no-repeat;
background-size: var(--qunit-progress);
transition: background-size 100ms ease-out;
}
#qunit-banner.qunit-pass {
background-image: none;
background-color: #64CF06;
}
#qunit-banner.qunit-fail {
background-image: none;
background-color: #EC4242;
}
#qunit-toolbar {
background-color: #EEE;
border-bottom: 1px solid #FFF;
}
#qunit-testresult {
clear: both;
border-top: 1px solid #FFF;
}
#qunit-toolbar-urlconfig,
#qunit-toolbar-filters,
#qunit-testresult,
#qunit-filteredTest {
padding: 7px 13px;
}
#qunit-filteredTest {
border-top: 1px solid #FFF;
background-color: #fbdbfb;
}
/** Fixed toolbar, with scrollable test results */
@supports (position: sticky) {
@media (min-height: 400px) {
#qunit-toolbar {
position: sticky;
top: 0px;
box-shadow: rgba(13, 51, 73, 0.3) 0px 5px 10px -5px;
}
}
}
/**
* Toolbar elements
*/
#qunit-toolbar label {
display: inline-block;
margin-right: 6px;
line-height: 2.1;
}
#qunit-toolbar form {
display: inline-block;
}
#qunit-toolbar input[type=checkbox],
#qunit-toolbar input[type=radio] {
margin: 3px;
}
#qunit-toolbar input[type=text] {
box-sizing: border-box;
height: 30px;
padding: 0 6px;
}
/**
* Toolbar layout
*/
#qunit-testrunner-toolbar {
display: flex;
flex-flow: row wrap;
justify-content: space-between;
}
#qunit-toolbar-filters {
flex-grow: 1;
justify-content: flex-end;
display: flex;
flex-flow: row wrap;
gap: 7px;
}
#qunit-modulefilter {
flex-grow: 1;
max-width: 450px;
}
#qunit-modulefilter label {
margin-right: 0;
display: flex;
flex-flow: row wrap;
}
#qunit-modulefilter-search {
width: 100%;
}
@media (max-width: 1000px) {
#qunit-toolbar-filters {
justify-content: flex-start;
}
}
/**
* Module selector
*/
#qunit-modulefilter-search-container {
/* grow within `#qunit-modulefilter label` */
flex-grow: 1;
position: relative;
}
#qunit-modulefilter-search-container:after {
position: absolute;
right: 6px;
bottom: 0;
height: 30px; /* align with input[type=text] */
width: 16px;
content: "";
background: url('data:image/svg+xml,<svg fill="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"><path clip-rule="evenodd" fill-rule="evenodd" d="M12.53 16.28a.75.75 0 01-1.06 0l-7.5-7.5a.75.75 0 011.06-1.06L12 14.69l6.97-6.97a.75.75 0 111.06 1.06l-7.5 7.5z"></path></svg>') center no-repeat;
}
#qunit-modulefilter-dropdown {
/* align with #qunit-modulefilter-search */
box-sizing: border-box;
width: 100%;
position: absolute;
right: 0;
top: 100%;
margin-top: 2px;
/* ensure that when on a narrow viewports and having only one result,
that #qunit-modulefilter-actions fall outside the dropdown rectangle. */
min-height: 3em;
border: 1px solid #AAA;
border-top-color: transparent;
border-radius: 0 0 .25em .25em;
color: #333;
background-color: #F5F5F5;
z-index: 99;
max-height: min(80vh, 700px);
overflow-y: auto;
}
#qunit-modulefilter-actions {
display: block;
overflow: auto;
/* align with #qunit-modulefilter-dropdown-list */
line-height: 1.5;
}
#qunit-modulefilter-actions button {
max-height: 2.8em;
margin: 0.25em;
}
#qunit-modulefilter-dropdown-list {
margin: 0;
padding: 0;
}
#qunit-modulefilter-dropdown-list li {
list-style: none;
}
#qunit-modulefilter-dropdown-list .clickable {
display: block;
padding: 0.25em 0.50em 0.25em 0.15em;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
#qunit-modulefilter-dropdown-list .clickable.checked {
font-weight: bold;
background-color: #E2F0F7;
}
#qunit-modulefilter-dropdown .clickable:hover {
background-color: #FFF;
}
/** Test Result */
#qunit-testresult {
/* left #qunit-testresult-display, right #qunit-testresult-controls */
display: flex;
flex-flow: row wrap;
align-items: center;
gap: 13px;
}
#qunit-testresult a {
color: #2F68DA;
}
#qunit-testresult .module-name {
font-weight: 700;
}
#qunit-testresult-controls {
max-width: 10%;
}
#qunit-testresult-controls:empty {
display: none;
}
/** Test output */
#qunit-tests {
list-style-position: inside;
}
.qunit-test {
padding: 0.4em 1em 0.4em 1em;
border-bottom: 1px solid #FFF;
list-style-position: inside;
}
.qunit-test.running {
display: none;
}
/**
* Clicking test name toggles `.qunit-assert-list` and `.qunit-source`.
* Note that skipped tests only have `.qunit-source`.
*/
.qunit-test .qunit-test-name {
cursor: pointer;
}
.qunit-test > a {
padding: 0.5em;
user-select: none;
}
.qunit-test a {
color: inherit;
text-decoration: underline;
}
.qunit-test a:hover,
.qunit-test a:focus {
color: #333;
}
.qunit-test .runtime {
float: right;
font-size: smaller;
user-select: none;
}
.qunit-assert-list {
margin-top: 0.5em;
background-color: #FFF;
color: #333;
}
.qunit-collapsed {
display: none;
}
.qunit-source {
margin: 0.6em 0 0.3em;
}
.qunit-assert-list li {
padding: 0.5em 5px;
border-bottom: none;
list-style-position: inside;
}
.qunit-assert-list table {
border-spacing: 0.5em;
}
.qunit-assert-list th {
text-align: right;
vertical-align: top;
}
.qunit-assert-list td {
vertical-align: top;
}
.qunit-assert-list pre {
white-space: pre-wrap;
word-wrap: break-word;
}
.qunit-assert-list del {
color: #00740E;
background-color: #D9F9E3;
text-decoration: none;
}
.qunit-assert-list ins {
color: #710909;
background-color: #FFD8E1;
text-decoration: none;
}
/** Test output: Counts */
.qunit-test .counts {
color: #333;
}
.qunit-test .passed {
color: #00740E;
}
.qunit-test .failed {
color: #710909;
}
/** Test output: Passing */
.qunit-test.pass {
color: #2F68DA;
background-color: #E2F0F7;
}
.qunit-test.pass .test-name {
color: #366097;
}
.qunit-assert-list .pass {
border-left: 10px solid #64CF06;
}
.qunit-test.pass .qunit-assert-list .fail,
.qunit-test.pass .qunit-assert-list .fail .test-actual,
.qunit-test.pass .qunit-assert-list .fail .test-expected,
.qunit-test.pass .qunit-assert-list .fail .test-diff,
.qunit-test.pass .qunit-assert-list .fail .test-source {
color: #366097;
}
/** Test output: Failing */
.qunit-test.fail {
color: #000;
background-color: #FFD8E1;
}
.qunit-assert-list .fail {
color: #710909;
border-left: 10px solid #EC4242;
white-space: pre;
}
.qunit-assert-list .fail .test-actual {
color: #EC4242;
}
.qunit-assert-list .fail .test-expected {
color: #00740E;
}
/** Test output: Aborted */
.qunit-test.aborted {
color: #000;
background-color: orange;
}
/** Test output: Skipped */
.qunit-test.skipped {
background-color: #EEE;
}
.qunit-test .qunit-todo-label,
.qunit-test .qunit-skipped-label {
background-color: #F4FF77;
display: inline-block;
font-style: normal;
color: #333;
/* Match and consume the 0.4em padding-top/bottom from `.qunit-test` */
padding: 0.4em 0.5em;
margin: -0.4em 0;
}
.qunit-test .qunit-todo-label {
background-color: #2F68DA;
color: #FFF;
}
/** Fixture */
#qunit-fixture {
position: absolute;
top: -10000px;
left: -10000px;
width: 1000px;
height: 1000px;
}