11import { test } from "bun:test" ;
22import { insertCss , insertGlobalCss } from "../src/aberdeen" ;
3- import { assertCss } from './helpers' ;
3+ import { assertCss , passTime } from './helpers' ;
44
55test ( 'Basic style' , async ( ) => {
66 let cls = insertCss ( 'color:red' ) ;
7+ await passTime ( ) ;
78 assertCss ( `${ cls } {color:red;}` ) ;
89} ) ;
910
@@ -15,6 +16,7 @@ test('Complex selectors', async () => {
1516 "body > &" : 'margin-bottom:20px' ,
1617 "body > & span" : 'font-size:20' ,
1718 } )
19+ await passTime ( ) ;
1820 assertCss (
1921 `${ cls } {margin:5;}` ,
2022 `${ cls } .x .y{font-weight:bold;}` ,
@@ -29,6 +31,7 @@ test('Global style', async () => {
2931 '*' : 'margin:4' ,
3032 'h1' : 'color:red' ,
3133 } ) ;
34+ await passTime ( ) ;
3235 assertCss (
3336 `*{margin:4;}` ,
3437 `h1{color:red;}` ,
@@ -44,6 +47,7 @@ test('Nested selectors with object values', async () => {
4447 '&:active' : 'transform:scale(0.95)' ,
4548 } ,
4649 } ) ;
50+ await passTime ( ) ;
4751 assertCss (
4852 `${ cls } {display:flex;}` ,
4953 `${ cls } button{background:blue;padding:var(--m2);}` ,
@@ -61,6 +65,7 @@ test('Media query with object containing multiple selectors', async () => {
6165 'input' : 'font-size:16px' ,
6266 } ,
6367 } ) ;
68+ await passTime ( ) ;
6469 assertCss (
6570 `${ cls } {display:flex;}` ,
6671 `@media (max-width: 600px){` ,
@@ -76,6 +81,7 @@ test('Media query with string value', async () => {
7681 '&' : 'color:black' ,
7782 '@media (prefers-color-scheme: dark)' : 'color:white' ,
7883 } ) ;
84+ await passTime ( ) ;
7985 assertCss (
8086 `${ cls } {color:black;}` ,
8187 `@media (prefers-color-scheme: dark){` ,
@@ -98,6 +104,7 @@ test('Media queries nested deeply get bubbled to outside', async () => {
98104 } ,
99105 } ,
100106 } ) ;
107+ await passTime ( ) ;
101108 assertCss (
102109 `${ cls } {display:grid;}` ,
103110 `${ cls } main{padding:var(--m4);}` ,
@@ -114,6 +121,7 @@ test('Quoted values (e.g., content property)', async () => {
114121 '&::before' : `content: "★"; color:gold mr:$1` ,
115122 '&::after' : `content: "\\00A0"; display:inline-block` ,
116123 } ) ;
124+ await passTime ( ) ;
117125 assertCss (
118126 `${ cls } ::before{content:"★";color:gold;margin-right:var(--m1);}` ,
119127 `${ cls } ::after{content:"\\00A0";display:inline-block;}` ,
@@ -124,6 +132,7 @@ test('Multi-word values with space-colon-semicolon syntax', async () => {
124132 let cls = insertCss ( {
125133 '&' : `border: 1px solid blue; transition: all 0.3s ease;` ,
126134 } ) ;
135+ await passTime ( ) ;
127136 assertCss (
128137 `${ cls } {border:1px solid blue;transition:all 0.3s ease;}` ,
129138 ) ;
@@ -133,6 +142,7 @@ test('Grid template areas with multiple quoted strings', async () => {
133142 let cls = insertCss ( {
134143 '&' : `grid-template-areas: "header header" "sidebar content" "footer footer";` ,
135144 } ) ;
145+ await passTime ( ) ;
136146 assertCss (
137147 `${ cls } {grid-template-areas:"header header" "sidebar content" "footer footer";}` ,
138148 ) ;
@@ -145,6 +155,7 @@ test('Handles unions combined with further nested selectors', async () => {
145155 '&:hover, &.active' : 'color:darkblue'
146156 } ,
147157 } ) ;
158+ await passTime ( ) ;
148159 assertCss (
149160 `${ cls } button,${ cls } a.link{color:blue;}` ,
150161 `${ cls } button:hover,${ cls } button.active,${ cls } a.link:hover,${ cls } a.link.active{color:darkblue;}` ,
0 commit comments