import dedent from 'dedent'
import postcss from 'postcss'
import { expect, it } from 'vitest'
import { formatNodes } from './format-nodes'
import { migrateVariantsDirective } from './migrate-variants-directive'
import { sortBuckets } from './sort-buckets'
const css = dedent
function migrate(input: string) {
return postcss()
.use(migrateVariantsDirective())
.use(sortBuckets())
.use(formatNodes())
.process(input, { from: expect.getState().testPath })
.then((result) => result.css)
}
it('should replace `@variants` with `@layer utilities`', async () => {
expect(
await migrate(css`
@variants hover, focus {
.foo {
color: red;
}
}
`),
).toMatchInlineSnapshot(`
"@layer utilities {
.foo {
color: red;
}
}"
`)
})