From de0b85d81e6392597a35196bde523b9642d7e016 Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Tue, 5 Sep 2023 20:09:03 -0300 Subject: test: update snapshot tests to always mock image dependency --- .../snapshot/generateAlbumCoverArtwork.js.test.cjs | 37 ++++++++++-------- .../test/snapshot/generateCoverArtwork.js.test.cjs | 37 ++++++++++-------- .../snapshot/generateTrackCoverArtwork.js.test.cjs | 45 +++++++++++++--------- .../test/snapshot/transformContent.js.test.cjs | 6 +-- test/snapshot/generateAlbumCoverArtwork.js | 14 +++---- test/snapshot/generateCoverArtwork.js | 12 +++--- test/snapshot/generateTrackCoverArtwork.js | 14 +++---- test/snapshot/transformContent.js | 17 +++++--- 8 files changed, 97 insertions(+), 85 deletions(-) diff --git a/tap-snapshots/test/snapshot/generateAlbumCoverArtwork.js.test.cjs b/tap-snapshots/test/snapshot/generateAlbumCoverArtwork.js.test.cjs index d787df68..017ab0e4 100644 --- a/tap-snapshots/test/snapshot/generateAlbumCoverArtwork.js.test.cjs +++ b/tap-snapshots/test/snapshot/generateAlbumCoverArtwork.js.test.cjs @@ -7,26 +7,29 @@ 'use strict' exports[`test/snapshot/generateAlbumCoverArtwork.js TAP generateAlbumCoverArtwork (snapshot) > display: primary 1`] = `
- -
-
-
-
- - - cw: creepy crawlies -
- click to show -
-
-
-
-
-
+ [mocked: image + args: [ + [ + { name: 'Damara', directory: 'damara', isContentWarning: false }, + { name: 'Cronus', directory: 'cronus', isContentWarning: false }, + { name: 'Bees', directory: 'bees', isContentWarning: false }, + { name: 'creepy crawlies', isContentWarning: true } + ] + ] + slots: { path: [ 'media.albumCover', 'bee-forus-seatbelt-safebee', 'png' ], thumb: 'medium', id: 'cover-art', reveal: true, link: true, square: true }]

Tags: Damara, Cronus, Bees

` exports[`test/snapshot/generateAlbumCoverArtwork.js TAP generateAlbumCoverArtwork (snapshot) > display: thumbnail 1`] = ` -
+[mocked: image + args: [ + [ + { name: 'Damara', directory: 'damara', isContentWarning: false }, + { name: 'Cronus', directory: 'cronus', isContentWarning: false }, + { name: 'Bees', directory: 'bees', isContentWarning: false }, + { name: 'creepy crawlies', isContentWarning: true } + ] + ] + slots: { path: [ 'media.albumCover', 'bee-forus-seatbelt-safebee', 'png' ], thumb: 'small', reveal: false, link: false, square: true }] ` diff --git a/tap-snapshots/test/snapshot/generateCoverArtwork.js.test.cjs b/tap-snapshots/test/snapshot/generateCoverArtwork.js.test.cjs index 88be76ea..c1c880bc 100644 --- a/tap-snapshots/test/snapshot/generateCoverArtwork.js.test.cjs +++ b/tap-snapshots/test/snapshot/generateCoverArtwork.js.test.cjs @@ -7,26 +7,29 @@ 'use strict' exports[`test/snapshot/generateCoverArtwork.js TAP generateCoverArtwork (snapshot) > display: primary 1`] = `
- -
-
-
-
- - - cw: creepy crawlies -
- click to show -
-
-
-
-
-
+ [mocked: image + args: [ + [ + { name: 'Damara', directory: 'damara', isContentWarning: false }, + { name: 'Cronus', directory: 'cronus', isContentWarning: false }, + { name: 'Bees', directory: 'bees', isContentWarning: false }, + { name: 'creepy crawlies', isContentWarning: true } + ] + ] + slots: { path: [ 'media.albumCover', 'bee-forus-seatbelt-safebee', 'png' ], thumb: 'medium', id: 'cover-art', reveal: true, link: true, square: true }]

Tags: Damara, Cronus, Bees

` exports[`test/snapshot/generateCoverArtwork.js TAP generateCoverArtwork (snapshot) > display: thumbnail 1`] = ` -
+[mocked: image + args: [ + [ + { name: 'Damara', directory: 'damara', isContentWarning: false }, + { name: 'Cronus', directory: 'cronus', isContentWarning: false }, + { name: 'Bees', directory: 'bees', isContentWarning: false }, + { name: 'creepy crawlies', isContentWarning: true } + ] + ] + slots: { path: [ 'media.albumCover', 'bee-forus-seatbelt-safebee', 'png' ], thumb: 'small', reveal: false, link: false, square: true }] ` diff --git a/tap-snapshots/test/snapshot/generateTrackCoverArtwork.js.test.cjs b/tap-snapshots/test/snapshot/generateTrackCoverArtwork.js.test.cjs index 92216a89..33b5d155 100644 --- a/tap-snapshots/test/snapshot/generateTrackCoverArtwork.js.test.cjs +++ b/tap-snapshots/test/snapshot/generateTrackCoverArtwork.js.test.cjs @@ -7,37 +7,44 @@ 'use strict' exports[`test/snapshot/generateTrackCoverArtwork.js TAP generateTrackCoverArtwork (snapshot) > display: primary - no unique art 1`] = `
- -
-
-
-
- - - cw: creepy crawlies -
- click to show -
-
-
-
-
-
+ [mocked: image + args: [ + [ + { name: 'Damara', directory: 'damara', isContentWarning: false }, + { name: 'Cronus', directory: 'cronus', isContentWarning: false }, + { name: 'Bees', directory: 'bees', isContentWarning: false }, + { name: 'creepy crawlies', isContentWarning: true } + ] + ] + slots: { path: [ 'media.albumCover', 'bee-forus-seatbelt-safebee', 'png' ], thumb: 'medium', id: 'cover-art', reveal: true, link: true, square: true }]

Tags: Damara, Cronus, Bees

` exports[`test/snapshot/generateTrackCoverArtwork.js TAP generateTrackCoverArtwork (snapshot) > display: primary - unique art 1`] = `
-
+ [mocked: image + args: [ [ { name: 'Bees', directory: 'bees', isContentWarning: false } ] ] + slots: { path: [ 'media.trackCover', 'bee-forus-seatbelt-safebee', 'beesmp3', 'jpg' ], thumb: 'medium', id: 'cover-art', reveal: true, link: true, square: true }]

Tags: Bees

` exports[`test/snapshot/generateTrackCoverArtwork.js TAP generateTrackCoverArtwork (snapshot) > display: thumbnail - no unique art 1`] = ` -
+[mocked: image + args: [ + [ + { name: 'Damara', directory: 'damara', isContentWarning: false }, + { name: 'Cronus', directory: 'cronus', isContentWarning: false }, + { name: 'Bees', directory: 'bees', isContentWarning: false }, + { name: 'creepy crawlies', isContentWarning: true } + ] + ] + slots: { path: [ 'media.albumCover', 'bee-forus-seatbelt-safebee', 'png' ], thumb: 'small', reveal: false, link: false, square: true }] ` exports[`test/snapshot/generateTrackCoverArtwork.js TAP generateTrackCoverArtwork (snapshot) > display: thumbnail - unique art 1`] = ` -
+[mocked: image + args: [ [ { name: 'Bees', directory: 'bees', isContentWarning: false } ] ] + slots: { path: [ 'media.trackCover', 'bee-forus-seatbelt-safebee', 'beesmp3', 'jpg' ], thumb: 'small', reveal: false, link: false, square: true }] ` diff --git a/tap-snapshots/test/snapshot/transformContent.js.test.cjs b/tap-snapshots/test/snapshot/transformContent.js.test.cjs index d144cf12..4af6b147 100644 --- a/tap-snapshots/test/snapshot/transformContent.js.test.cjs +++ b/tap-snapshots/test/snapshot/transformContent.js.test.cjs @@ -53,16 +53,16 @@ How it goes

` exports[`test/snapshot/transformContent.js TAP transformContent (snapshot) > non-inline image #1 1`] = ` -
+
[mocked: image - slots: { src: 'spark.png', link: true, thumb: 'large' }]
` exports[`test/snapshot/transformContent.js TAP transformContent (snapshot) > non-inline image #2 1`] = `

Rad.

-
+
[mocked: image - slots: { src: 'spark.png', link: true, thumb: 'large' }]
` exports[`test/snapshot/transformContent.js TAP transformContent (snapshot) > non-inline image #3 1`] = ` -
+
[mocked: image - slots: { src: 'spark.png', link: true, thumb: 'large' }]

Baller.

` diff --git a/test/snapshot/generateAlbumCoverArtwork.js b/test/snapshot/generateAlbumCoverArtwork.js index 98632d39..b1c7885f 100644 --- a/test/snapshot/generateAlbumCoverArtwork.js +++ b/test/snapshot/generateAlbumCoverArtwork.js @@ -1,12 +1,14 @@ import t from 'tap'; + +import contentFunction from '#content-function'; import {testContentFunctions} from '#test-lib'; testContentFunctions(t, 'generateAlbumCoverArtwork (snapshot)', async (t, evaluate) => { - await evaluate.load(); - - const extraDependencies = { - getSizeOfImageFile: () => 0, - }; + await evaluate.load({ + mock: { + image: evaluate.stubContentFunction('image'), + }, + }); const album = { directory: 'bee-forus-seatbelt-safebee', @@ -23,13 +25,11 @@ testContentFunctions(t, 'generateAlbumCoverArtwork (snapshot)', async (t, evalua name: 'generateAlbumCoverArtwork', args: [album], slots: {mode: 'primary'}, - extraDependencies, }); evaluate.snapshot('display: thumbnail', { name: 'generateAlbumCoverArtwork', args: [album], slots: {mode: 'thumbnail'}, - extraDependencies, }); }); diff --git a/test/snapshot/generateCoverArtwork.js b/test/snapshot/generateCoverArtwork.js index 21c91454..e35dd8d0 100644 --- a/test/snapshot/generateCoverArtwork.js +++ b/test/snapshot/generateCoverArtwork.js @@ -2,11 +2,11 @@ import t from 'tap'; import {testContentFunctions} from '#test-lib'; testContentFunctions(t, 'generateCoverArtwork (snapshot)', async (t, evaluate) => { - await evaluate.load(); - - const extraDependencies = { - getSizeOfImageFile: () => 0, - }; + await evaluate.load({ + mock: { + image: evaluate.stubContentFunction('image', {mock: true}), + }, + }); const artTags = [ {name: 'Damara', directory: 'damara', isContentWarning: false}, @@ -21,13 +21,11 @@ testContentFunctions(t, 'generateCoverArtwork (snapshot)', async (t, evaluate) = name: 'generateCoverArtwork', args: [artTags], slots: {path, mode: 'primary'}, - extraDependencies, }); evaluate.snapshot('display: thumbnail', { name: 'generateCoverArtwork', args: [artTags], slots: {path, mode: 'thumbnail'}, - extraDependencies, }); }); diff --git a/test/snapshot/generateTrackCoverArtwork.js b/test/snapshot/generateTrackCoverArtwork.js index 9e154703..03a181e7 100644 --- a/test/snapshot/generateTrackCoverArtwork.js +++ b/test/snapshot/generateTrackCoverArtwork.js @@ -2,11 +2,11 @@ import t from 'tap'; import {testContentFunctions} from '#test-lib'; testContentFunctions(t, 'generateTrackCoverArtwork (snapshot)', async (t, evaluate) => { - await evaluate.load(); - - const extraDependencies = { - getSizeOfImageFile: () => 0, - }; + await evaluate.load({ + mock: { + image: evaluate.stubContentFunction('image'), + }, + }); const album = { directory: 'bee-forus-seatbelt-safebee', @@ -37,27 +37,23 @@ testContentFunctions(t, 'generateTrackCoverArtwork (snapshot)', async (t, evalua name: 'generateTrackCoverArtwork', args: [track1], slots: {mode: 'primary'}, - extraDependencies, }); evaluate.snapshot('display: thumbnail - unique art', { name: 'generateTrackCoverArtwork', args: [track1], slots: {mode: 'thumbnail'}, - extraDependencies, }); evaluate.snapshot('display: primary - no unique art', { name: 'generateTrackCoverArtwork', args: [track2], slots: {mode: 'primary'}, - extraDependencies, }); evaluate.snapshot('display: thumbnail - no unique art', { name: 'generateTrackCoverArtwork', args: [track2], slots: {mode: 'thumbnail'}, - extraDependencies, }); }); diff --git a/test/snapshot/transformContent.js b/test/snapshot/transformContent.js index 25952856..b05beac1 100644 --- a/test/snapshot/transformContent.js +++ b/test/snapshot/transformContent.js @@ -2,7 +2,11 @@ import t from 'tap'; import {testContentFunctions} from '#test-lib'; testContentFunctions(t, 'transformContent (snapshot)', async (t, evaluate) => { - await evaluate.load(); + await evaluate.load({ + mock: { + image: evaluate.stubContentFunction('image'), + }, + }); const extraDependencies = { wikiData: { @@ -11,8 +15,6 @@ testContentFunctions(t, 'transformContent (snapshot)', async (t, evaluate) => { ], }, - getSizeOfImageFile: () => 0, - to: (key, ...args) => `to-${key}/${args.join('/')}`, }; @@ -50,15 +52,18 @@ testContentFunctions(t, 'transformContent (snapshot)', async (t, evaluate) => { quickSnapshot( 'non-inline image #2', - `Rad.\n`); + `Rad.\n` + + ``); quickSnapshot( 'non-inline image #3', - `\nBaller.`); + `\n` + + `Baller.`); quickSnapshot( 'dates', - `[[date:2023-04-13]] Yep!\nVery nice: [[date:25 October 2413]]`); + `[[date:2023-04-13]] Yep!\n` + + `Very nice: [[date:25 October 2413]]`); quickSnapshot( 'super basic string', -- cgit 1.3.0-6-gf8a5