import { expect, it } from 'vitest'
import { replaceShadowColors } from './replace-shadow-colors'
const table = [
{
input: 'var(--my-shadow)',
output: 'var(--my-shadow)',
},
{
input: '1px var(--my-shadow)',
output: '1px var(--my-shadow)',
},
{
input: '1px 1px var(--my-color)',
output: '1px 1px var(--tw-shadow-color, var(--my-color))',
},
{
input: '0 0 0 var(--my-color)',
output: '0 0 0 var(--tw-shadow-color, var(--my-color))',
},
{
input: '1px 2px',
output: '1px 2px var(--tw-shadow-color, currentcolor)',
},
{
input: '1px 2px 3px',
output: '1px 2px 3px var(--tw-shadow-color, currentcolor)',
},
{
input: '1px 2px 3px 4px',
output: '1px 2px 3px 4px var(--tw-shadow-color, currentcolor)',
},
{
input: ['var(--my-shadow)', '1px 1px var(--my-color)', '0 0 1px var(--my-color)'].join(', '),
output: [
'var(--my-shadow)',
'1px 1px var(--tw-shadow-color, var(--my-color))',
'0 0 1px var(--tw-shadow-color, var(--my-color))',
].join(', '),
},
]
it.each(table)(
'should replace the color of box-shadow $input with $output',
({ input, output }) => {
let parsed = replaceShadowColors(input, (color) => `var(--tw-shadow-color, ${color})`)
expect(parsed).toEqual(output)
},
)