Skip to content

Commit

Permalink
Detect warnings in Svelte tests
Browse files Browse the repository at this point in the history
  • Loading branch information
philipp-spiess committed Jan 7, 2025
1 parent e7a13b4 commit c96bbe7
Showing 1 changed file with 14 additions and 11 deletions.
25 changes: 14 additions & 11 deletions integrations/vite/svelte.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -64,12 +64,12 @@ test(
'src/other.css': css`
.local {
@apply text-red-500;
animation: 2s ease-in-out 0s infinite localKeyframes;
animation: 2s ease-in-out infinite localKeyframes;
}
:global(.global) {
@apply text-green-500;
animation: 2s ease-in-out 0s infinite globalKeyframes;
animation: 2s ease-in-out infinite globalKeyframes;
}
@keyframes -global-globalKeyframes {
Expand All @@ -93,18 +93,21 @@ test(
},
},
async ({ exec, fs, expect }) => {
await exec('pnpm vite build')
let output = await exec('pnpm vite build')

let files = await fs.glob('dist/**/*.css')
expect(files).toHaveLength(1)

await fs.expectFileToContain(files[0][0], [
candidate`underline`,
'.global{color:var(--color-green-500);animation:2s ease-in-out 0s infinite globalKeyframes}',
/\.local.svelte-.*\{color:var\(--color-red-500\);animation:2s ease-in-out 0s infinite svelte-.*-localKeyframes\}/,
'.global{color:var(--color-green-500);animation:2s ease-in-out infinite globalKeyframes}',
/\.local.svelte-.*\{color:var\(--color-red-500\);animation:2s ease-in-out infinite svelte-.*-localKeyframes\}/,
/@keyframes globalKeyframes\{/,
/@keyframes svelte-.*-localKeyframes\{/,
])

// Should not print any warnings
expect(output).not.toContain('vite-plugin-svelte')

Check failure on line 110 in integrations/vite/svelte.test.ts

View workflow job for this annotation

GitHub Actions / Linux / vite

vite/svelte.test.ts > production build

AssertionError: expected '\u001b[36mvite v6.0.7 \u001b[32mbuild…' not to contain 'vite-plugin-svelte' - Expected + Received - vite-plugin-svelte + vite v6.0.7 building for production... + transforming... + ✓ 92 modules transformed. + rendering chunks... + computing gzip size... + dist/index.html 0.23 kB │ gzip: 0.18 kB + dist/assets/index-DDLFN03I.css 22.25 kB │ gzip: 6.08 kB + dist/assets/index-DAGZA_Q9.js 10.80 kB │ gzip: 4.75 kB + ✓ built in 685ms + + + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:502:0 Unused CSS selector "html" + https://svelte.dev/e/css_unused_selector + 500: */ + 501: + 502: html, + ^ + 503: :host { + 504: line-height: 1.5; /* 1 */ + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:526:0 Unused CSS selector "body" + https://svelte.dev/e/css_unused_selector + 524: */ + 525: + 526: body { + ^ + 527: line-height: inherit; + 528: } + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:536:0 Unused CSS selector "hr" + https://svelte.dev/e/css_unused_selector + 534: */ + 535: + 536: hr { + ^ + 537: height: 0; /* 1 */ + 538: color: inherit; /* 2 */ + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:546:0 Unused CSS selector "abbr:where([title])" + https://svelte.dev/e/css_unused_selector + 544: */ + 545: + 546: abbr:where([title]) { + ^ + 547: -webkit-text-decoration: underline dotted; + 548: text-decoration: underline dotted; + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:556:0 Unused CSS selector "h2" + https://svelte.dev/e/css_unused_selector + 554: + 555: h1, + 556: h2, + ^ + 557: h3, + 558: h4, + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:557:0 Unused CSS selector "h3" + https://svelte.dev/e/css_unused_selector + 555: h1, + 556: h2, + 557: h3, + ^ + 558: h4, + 559: h5, + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:558:0 Unused CSS selector "h4" + https://svelte.dev/e/css_unused_selector + 556: h2, + 557: h3, + 558: h4, + ^ + 559: h5, + 560: h6 { + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:559:0 Unused CSS selector "h5" + https://svelte.dev/e/css_unused_selector + 557: h3, + 558: h4, + 559: h5, + ^ + 560: h6 { + 561: font-size: inherit; + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:560:0 Unused CSS selector "h6" + https://svelte.dev/e/css_unused_selector + 558: h4, + 559: h5, + 560: h6 { + ^ + 561: font-size: inherit; + 562: font-weight: inherit; + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:569:0 Unused CSS selector "a" + https://svelte.dev/e/css_unused_selector + 567: */ + 568: + 569: a { + ^ + 570: color: inherit; + 571: -webkit-text-decoration: inherit; + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:579:0 Unused CSS selector "b" + https://svelte.dev/e/css_unused_selector + 577: */ + 578: + 579: b, + ^ + 580: strong { + 581: font-weight: bolder; + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:580:0 Unused CSS selector "strong" + https://svelte.dev/e/css_unused_selector + 578: + 579: b, + 580: strong { + ^ + 581: font-weight: bolder; + 582: } + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:591:0 Unused CSS selector "code" + https://svelte.dev/e/css_unused_selector + 589: */ + 590: + 591: code, + ^ + 592: kbd, + 593: samp, + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:592:0 Unused CSS selector "kbd" + https://svelte.dev/e/css_unused_selector + 590: + 591: code, + 592: kbd, + ^ + 593: samp, + 594: pre { + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:593:0 Unused CSS selector "samp" + https://svelte.dev/e/css_unused_selector + 591: code, + 592: kbd, + 593: samp, + ^ + 594: pre { + 595: font-family: var( + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:594:0 Unused CSS selector "pre" + https://svelte.dev/e/css_unused_selector + 592: kbd, + 593: samp, + 594: pre { + ^ + 595: font-family: var( + 596: --default-mono-font-family, + 1:10:54 PM [vite-plugin-svelte] src/App.svelte:615:0 Unused CSS selector "small" + https://svelte.dev/e/css_unused_selector + 613: */ + 614: + 615: sma

Check failure on line 110 in integrations/vite/svelte.test.ts

View workflow job for this annotation

GitHub Actions / Linux / vite

vite/svelte.test.ts > production build

AssertionError: expected '\u001b[36mvite v6.0.7 \u001b[32mbuild…' not to contain 'vite-plugin-svelte' - Expected + Received - vite-plugin-svelte + vite v6.0.7 building for production... + transforming... + ✓ 92 modules transformed. + rendering chunks... + computing gzip size... + dist/index.html 0.23 kB │ gzip: 0.18 kB + dist/assets/index-DDLFN03I.css 22.25 kB │ gzip: 6.08 kB + dist/assets/index-DAGZA_Q9.js 10.80 kB │ gzip: 4.75 kB + ✓ built in 966ms + + + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:502:0 Unused CSS selector "html" + https://svelte.dev/e/css_unused_selector + 500: */ + 501: + 502: html, + ^ + 503: :host { + 504: line-height: 1.5; /* 1 */ + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:526:0 Unused CSS selector "body" + https://svelte.dev/e/css_unused_selector + 524: */ + 525: + 526: body { + ^ + 527: line-height: inherit; + 528: } + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:536:0 Unused CSS selector "hr" + https://svelte.dev/e/css_unused_selector + 534: */ + 535: + 536: hr { + ^ + 537: height: 0; /* 1 */ + 538: color: inherit; /* 2 */ + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:546:0 Unused CSS selector "abbr:where([title])" + https://svelte.dev/e/css_unused_selector + 544: */ + 545: + 546: abbr:where([title]) { + ^ + 547: -webkit-text-decoration: underline dotted; + 548: text-decoration: underline dotted; + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:556:0 Unused CSS selector "h2" + https://svelte.dev/e/css_unused_selector + 554: + 555: h1, + 556: h2, + ^ + 557: h3, + 558: h4, + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:557:0 Unused CSS selector "h3" + https://svelte.dev/e/css_unused_selector + 555: h1, + 556: h2, + 557: h3, + ^ + 558: h4, + 559: h5, + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:558:0 Unused CSS selector "h4" + https://svelte.dev/e/css_unused_selector + 556: h2, + 557: h3, + 558: h4, + ^ + 559: h5, + 560: h6 { + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:559:0 Unused CSS selector "h5" + https://svelte.dev/e/css_unused_selector + 557: h3, + 558: h4, + 559: h5, + ^ + 560: h6 { + 561: font-size: inherit; + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:560:0 Unused CSS selector "h6" + https://svelte.dev/e/css_unused_selector + 558: h4, + 559: h5, + 560: h6 { + ^ + 561: font-size: inherit; + 562: font-weight: inherit; + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:569:0 Unused CSS selector "a" + https://svelte.dev/e/css_unused_selector + 567: */ + 568: + 569: a { + ^ + 570: color: inherit; + 571: -webkit-text-decoration: inherit; + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:579:0 Unused CSS selector "b" + https://svelte.dev/e/css_unused_selector + 577: */ + 578: + 579: b, + ^ + 580: strong { + 581: font-weight: bolder; + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:580:0 Unused CSS selector "strong" + https://svelte.dev/e/css_unused_selector + 578: + 579: b, + 580: strong { + ^ + 581: font-weight: bolder; + 582: } + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:591:0 Unused CSS selector "code" + https://svelte.dev/e/css_unused_selector + 589: */ + 590: + 591: code, + ^ + 592: kbd, + 593: samp, + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:592:0 Unused CSS selector "kbd" + https://svelte.dev/e/css_unused_selector + 590: + 591: code, + 592: kbd, + ^ + 593: samp, + 594: pre { + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:593:0 Unused CSS selector "samp" + https://svelte.dev/e/css_unused_selector + 591: code, + 592: kbd, + 593: samp, + ^ + 594: pre { + 595: font-family: var( + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:594:0 Unused CSS selector "pre" + https://svelte.dev/e/css_unused_selector + 592: kbd, + 593: samp, + 594: pre { + ^ + 595: font-family: var( + 596: --default-mono-font-family, + 1:10:58 PM [vite-plugin-svelte] src/App.svelte:615:0 Unused CSS selector "small" + https://svelte.dev/e/css_unused_selector + 613: */ + 614: + 615: sma

Check failure on line 110 in integrations/vite/svelte.test.ts

View workflow job for this annotation

GitHub Actions / Linux / vite

vite/svelte.test.ts > production build

AssertionError: expected '\u001b[36mvite v6.0.7 \u001b[32mbuild…' not to contain 'vite-plugin-svelte' - Expected + Received - vite-plugin-svelte + vite v6.0.7 building for production... + transforming... + ✓ 92 modules transformed. + rendering chunks... + computing gzip size... + dist/index.html 0.23 kB │ gzip: 0.18 kB + dist/assets/index-DDLFN03I.css 22.25 kB │ gzip: 6.08 kB + dist/assets/index-DAGZA_Q9.js 10.80 kB │ gzip: 4.75 kB + ✓ built in 689ms + + + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:502:0 Unused CSS selector "html" + https://svelte.dev/e/css_unused_selector + 500: */ + 501: + 502: html, + ^ + 503: :host { + 504: line-height: 1.5; /* 1 */ + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:526:0 Unused CSS selector "body" + https://svelte.dev/e/css_unused_selector + 524: */ + 525: + 526: body { + ^ + 527: line-height: inherit; + 528: } + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:536:0 Unused CSS selector "hr" + https://svelte.dev/e/css_unused_selector + 534: */ + 535: + 536: hr { + ^ + 537: height: 0; /* 1 */ + 538: color: inherit; /* 2 */ + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:546:0 Unused CSS selector "abbr:where([title])" + https://svelte.dev/e/css_unused_selector + 544: */ + 545: + 546: abbr:where([title]) { + ^ + 547: -webkit-text-decoration: underline dotted; + 548: text-decoration: underline dotted; + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:556:0 Unused CSS selector "h2" + https://svelte.dev/e/css_unused_selector + 554: + 555: h1, + 556: h2, + ^ + 557: h3, + 558: h4, + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:557:0 Unused CSS selector "h3" + https://svelte.dev/e/css_unused_selector + 555: h1, + 556: h2, + 557: h3, + ^ + 558: h4, + 559: h5, + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:558:0 Unused CSS selector "h4" + https://svelte.dev/e/css_unused_selector + 556: h2, + 557: h3, + 558: h4, + ^ + 559: h5, + 560: h6 { + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:559:0 Unused CSS selector "h5" + https://svelte.dev/e/css_unused_selector + 557: h3, + 558: h4, + 559: h5, + ^ + 560: h6 { + 561: font-size: inherit; + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:560:0 Unused CSS selector "h6" + https://svelte.dev/e/css_unused_selector + 558: h4, + 559: h5, + 560: h6 { + ^ + 561: font-size: inherit; + 562: font-weight: inherit; + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:569:0 Unused CSS selector "a" + https://svelte.dev/e/css_unused_selector + 567: */ + 568: + 569: a { + ^ + 570: color: inherit; + 571: -webkit-text-decoration: inherit; + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:579:0 Unused CSS selector "b" + https://svelte.dev/e/css_unused_selector + 577: */ + 578: + 579: b, + ^ + 580: strong { + 581: font-weight: bolder; + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:580:0 Unused CSS selector "strong" + https://svelte.dev/e/css_unused_selector + 578: + 579: b, + 580: strong { + ^ + 581: font-weight: bolder; + 582: } + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:591:0 Unused CSS selector "code" + https://svelte.dev/e/css_unused_selector + 589: */ + 590: + 591: code, + ^ + 592: kbd, + 593: samp, + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:592:0 Unused CSS selector "kbd" + https://svelte.dev/e/css_unused_selector + 590: + 591: code, + 592: kbd, + ^ + 593: samp, + 594: pre { + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:593:0 Unused CSS selector "samp" + https://svelte.dev/e/css_unused_selector + 591: code, + 592: kbd, + 593: samp, + ^ + 594: pre { + 595: font-family: var( + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:594:0 Unused CSS selector "pre" + https://svelte.dev/e/css_unused_selector + 592: kbd, + 593: samp, + 594: pre { + ^ + 595: font-family: var( + 596: --default-mono-font-family, + 1:11:02 PM [vite-plugin-svelte] src/App.svelte:615:0 Unused CSS selector "small" + https://svelte.dev/e/css_unused_selector + 613: */ + 614: + 615: sma
},
)

Expand Down Expand Up @@ -172,12 +175,12 @@ test(
'src/other.css': css`
.local {
@apply text-red-500;
animation: 2s ease-in-out 0s infinite localKeyframes;
animation: 2s ease-in-out infinite localKeyframes;
}
:global(.global) {
@apply text-green-500;
animation: 2s ease-in-out 0s infinite globalKeyframes;
animation: 2s ease-in-out infinite globalKeyframes;
}
@keyframes -global-globalKeyframes {
Expand Down Expand Up @@ -210,10 +213,10 @@ test(
let [, css] = files[0]
expect(css).toContain(candidate`underline`)
expect(css).toContain(
'.global{color:var(--color-green-500);animation:2s ease-in-out 0s infinite globalKeyframes}',
'.global{color:var(--color-green-500);animation:2s ease-in-out infinite globalKeyframes}',
)
expect(css).toMatch(
/\.local.svelte-.*\{color:var\(--color-red-500\);animation:2s ease-in-out 0s infinite svelte-.*-localKeyframes\}/,
/\.local.svelte-.*\{color:var\(--color-red-500\);animation:2s ease-in-out infinite svelte-.*-localKeyframes\}/,
)
expect(css).toMatch(/@keyframes globalKeyframes\{/)
expect(css).toMatch(/@keyframes svelte-.*-localKeyframes\{/)
Expand All @@ -235,10 +238,10 @@ test(
let [, css] = files[0]
expect(css).toContain(candidate`font-bold`)
expect(css).toContain(
'.global{color:var(--color-green-500);animation:2s ease-in-out 0s infinite globalKeyframes}',
'.global{color:var(--color-green-500);animation:2s ease-in-out infinite globalKeyframes}',
)
expect(css).toMatch(
/\.local.svelte-.*\{color:var\(--color-red-500\);animation:2s ease-in-out 0s infinite svelte-.*-localKeyframes\}/,
/\.local.svelte-.*\{color:var\(--color-red-500\);animation:2s ease-in-out infinite svelte-.*-localKeyframes\}/,
)
expect(css).toMatch(/@keyframes globalKeyframes\{/)
expect(css).toMatch(/@keyframes svelte-.*-localKeyframes\{/)
Expand Down

0 comments on commit c96bbe7

Please sign in to comment.