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