diff options
author | (quasar) nebula <qznebula@protonmail.com> | 2023-11-24 14:14:53 -0400 |
---|---|---|
committer | (quasar) nebula <qznebula@protonmail.com> | 2023-11-24 14:18:36 -0400 |
commit | 25956ed1bbc7b894a0921530a2d7cbb892cb56c5 (patch) | |
tree | 3ef16473970373277d462850e82509514cfb8487 | |
parent | ad1ae12ab182dd50cf3ca6ec653d371d77b5fabb (diff) |
test: linkExternal: update snapshot and loosely tidy test
-rw-r--r-- | tap-snapshots/test/snapshot/linkExternal.js.test.cjs | 65 | ||||
-rw-r--r-- | test/snapshot/linkExternal.js | 78 |
2 files changed, 89 insertions, 54 deletions
diff --git a/tap-snapshots/test/snapshot/linkExternal.js.test.cjs b/tap-snapshots/test/snapshot/linkExternal.js.test.cjs index cd6dca76..dd5493c0 100644 --- a/tap-snapshots/test/snapshot/linkExternal.js.test.cjs +++ b/tap-snapshots/test/snapshot/linkExternal.js.test.cjs @@ -5,7 +5,41 @@ * Make sure to inspect the output below. Do not ignore changes! */ 'use strict' -exports[`test/snapshot/linkExternal.js > TAP > linkExternal (snapshot) > basic domain matches 1`] = ` +exports[`test/snapshot/linkExternal.js > TAP > linkExternal (snapshot) > context: album, style: compact 1`] = ` +<a href="https://youtu.be/abc" class="nowrap">youtu.be</a> +<a href="https://youtube.com/watch?v=abc" class="nowrap">youtube.com</a> +<a href="https://youtube.com/Playlist?list=kweh" class="nowrap">youtube.com</a> +` + +exports[`test/snapshot/linkExternal.js > TAP > linkExternal (snapshot) > context: album, style: normal 1`] = ` +<a href="https://youtu.be/abc" class="nowrap">YouTube (full album)</a> +<a href="https://youtube.com/watch?v=abc" class="nowrap">YouTube (full album)</a> +<a href="https://youtube.com/Playlist?list=kweh" class="nowrap">YouTube</a> +` + +exports[`test/snapshot/linkExternal.js > TAP > linkExternal (snapshot) > context: album, style: platform 1`] = ` +<a href="https://youtu.be/abc" class="nowrap">YouTube</a> +<a href="https://youtube.com/watch?v=abc" class="nowrap">YouTube</a> +<a href="https://youtube.com/Playlist?list=kweh" class="nowrap">YouTube</a> +` + +exports[`test/snapshot/linkExternal.js > TAP > linkExternal (snapshot) > context: generic, style: compact 1`] = ` +<a href="https://homestuck.bandcamp.com/" class="nowrap">homestuck</a> +<a href="https://soundcloud.com/plazmataz" class="nowrap">plazmataz</a> +<a href="https://aeritus.tumblr.com/" class="nowrap">aeritus</a> +<a href="https://twitter.com/awkwarddoesart" class="nowrap">@awkwarddoesart</a> +<a href="https://www.deviantart.com/chesswanderlust-sama" class="nowrap">deviantart.com</a> +<a href="https://en.wikipedia.org/wiki/Haydn_Quartet_(vocal_ensemble)" class="nowrap">en.wikipedia.org</a> +<a href="https://www.poetryfoundation.org/poets/christina-rossetti" class="nowrap">poetryfoundation.org</a> +<a href="https://www.instagram.com/levc_egm/" class="nowrap">instagram.com</a> +<a href="https://www.patreon.com/CecilyRenns" class="nowrap">patreon.com</a> +<a href="https://open.spotify.com/artist/63SNNpNOicDzG3LY82G4q3" class="nowrap">open.spotify.com</a> +<a href="https://buzinkai.newgrounds.com/" class="nowrap">buzinkai.newgrounds.com</a> +<a href="https://music.solatrus.com/" class="nowrap">music.solatrus.com</a> +<a href="https://types.pl/" class="nowrap">types.pl</a> +` + +exports[`test/snapshot/linkExternal.js > TAP > linkExternal (snapshot) > context: generic, style: normal 1`] = ` <a href="https://homestuck.bandcamp.com/" class="nowrap">Bandcamp</a> <a href="https://soundcloud.com/plazmataz" class="nowrap">SoundCloud</a> <a href="https://aeritus.tumblr.com/" class="nowrap">Tumblr</a> @@ -17,23 +51,26 @@ exports[`test/snapshot/linkExternal.js > TAP > linkExternal (snapshot) > basic d <a href="https://www.patreon.com/CecilyRenns" class="nowrap">Patreon</a> <a href="https://open.spotify.com/artist/63SNNpNOicDzG3LY82G4q3" class="nowrap">Spotify</a> <a href="https://buzinkai.newgrounds.com/" class="nowrap">Newgrounds</a> -` - -exports[`test/snapshot/linkExternal.js > TAP > linkExternal (snapshot) > custom domains for common platforms 1`] = ` -<a href="https://music.solatrus.com/" class="nowrap">music.solatrus.com</a> +<a href="https://music.solatrus.com/" class="nowrap">Bandcamp (music.solatrus.com)</a> <a href="https://types.pl/" class="nowrap">Mastodon (types.pl)</a> ` -exports[`test/snapshot/linkExternal.js > TAP > linkExternal (snapshot) > custom matches - album 1`] = ` -<a href="https://youtu.be/abc" class="nowrap">YouTube (full album)</a> -<a href="https://youtube.com/watch?v=abc" class="nowrap">YouTube (full album)</a> -<a href="https://youtube.com/Playlist?list=kweh" class="nowrap">YouTube (playlist)</a> -` - -exports[`test/snapshot/linkExternal.js > TAP > linkExternal (snapshot) > missing domain (arbitrary local path) 1`] = ` -<a href="/foo/bar/baz.mp3" class="nowrap">Wiki Archive (local upload)</a> +exports[`test/snapshot/linkExternal.js > TAP > linkExternal (snapshot) > context: generic, style: platform 1`] = ` +<a href="https://homestuck.bandcamp.com/" class="nowrap">Bandcamp</a> +<a href="https://soundcloud.com/plazmataz" class="nowrap">SoundCloud</a> +<a href="https://aeritus.tumblr.com/" class="nowrap">Tumblr</a> +<a href="https://twitter.com/awkwarddoesart" class="nowrap">Twitter</a> +<a href="https://www.deviantart.com/chesswanderlust-sama" class="nowrap">DeviantArt</a> +<a href="https://en.wikipedia.org/wiki/Haydn_Quartet_(vocal_ensemble)" class="nowrap">Wikipedia</a> +<a href="https://www.poetryfoundation.org/poets/christina-rossetti" class="nowrap">Poetry Foundation</a> +<a href="https://www.instagram.com/levc_egm/" class="nowrap">Instagram</a> +<a href="https://www.patreon.com/CecilyRenns" class="nowrap">Patreon</a> +<a href="https://open.spotify.com/artist/63SNNpNOicDzG3LY82G4q3" class="nowrap">Spotify</a> +<a href="https://buzinkai.newgrounds.com/" class="nowrap">Newgrounds</a> +<a href="https://music.solatrus.com/" class="nowrap">Bandcamp</a> +<a href="https://types.pl/" class="nowrap">Mastodon</a> ` exports[`test/snapshot/linkExternal.js > TAP > linkExternal (snapshot) > unknown domain (arbitrary world wide web path) 1`] = ` -<a href="https://snoo.ping.as/usual/i/see/" class="nowrap">snoo.ping.as</a> +<a href="https://snoo.ping.as/usual/i/see/" class="nowrap">External</a> ` diff --git a/test/snapshot/linkExternal.js b/test/snapshot/linkExternal.js index 3e8aee0d..f9877aad 100644 --- a/test/snapshot/linkExternal.js +++ b/test/snapshot/linkExternal.js @@ -4,51 +4,49 @@ import {testContentFunctions} from '#test-lib'; testContentFunctions(t, 'linkExternal (snapshot)', async (t, evaluate) => { await evaluate.load(); - evaluate.snapshot('missing domain (arbitrary local path)', { - name: 'linkExternal', - args: ['/foo/bar/baz.mp3'] - }); - evaluate.snapshot('unknown domain (arbitrary world wide web path)', { name: 'linkExternal', args: ['https://snoo.ping.as/usual/i/see/'], }); - evaluate.snapshot('basic domain matches', { - name: 'linkExternal', - multiple: [ - {args: ['https://homestuck.bandcamp.com/']}, - {args: ['https://soundcloud.com/plazmataz']}, - {args: ['https://aeritus.tumblr.com/']}, - {args: ['https://twitter.com/awkwarddoesart']}, - {args: ['https://www.deviantart.com/chesswanderlust-sama']}, - {args: ['https://en.wikipedia.org/wiki/Haydn_Quartet_(vocal_ensemble)']}, - {args: ['https://www.poetryfoundation.org/poets/christina-rossetti']}, - {args: ['https://www.instagram.com/levc_egm/']}, - {args: ['https://www.patreon.com/CecilyRenns']}, - {args: ['https://open.spotify.com/artist/63SNNpNOicDzG3LY82G4q3']}, - {args: ['https://buzinkai.newgrounds.com/']}, - ], - }); + const urlsToArgs = urls => + urls.map(url => ({args: [url]})); - evaluate.snapshot('custom matches - album', { - name: 'linkExternal', - multiple: [ - {args: ['https://youtu.be/abc']}, - {args: ['https://youtube.com/watch?v=abc']}, - {args: ['https://youtube.com/Playlist?list=kweh']}, - ], - slots: { - mode: 'album', - }, - }); + const quickSnapshot = (message, urls, slots) => + evaluate.snapshot(message, { + name: 'linkExternal', + slots, + multiple: urlsToArgs(urls), + }); - evaluate.snapshot('custom domains for common platforms', { - name: 'linkExternal', - multiple: [ - // Just one domain of each platform is OK here - {args: ['https://music.solatrus.com/']}, - {args: ['https://types.pl/']}, - ], - }); + const quickSnapshotAllStyles = (context, urls) => { + for (const style of ['platform', 'normal', 'compact']) { + const message = `context: ${context}, style: ${style}`; + quickSnapshot(message, urls, {context, style}); + } + }; + + quickSnapshotAllStyles('generic', [ + 'https://homestuck.bandcamp.com/', + 'https://soundcloud.com/plazmataz', + 'https://aeritus.tumblr.com/', + 'https://twitter.com/awkwarddoesart', + 'https://www.deviantart.com/chesswanderlust-sama', + 'https://en.wikipedia.org/wiki/Haydn_Quartet_(vocal_ensemble)', + 'https://www.poetryfoundation.org/poets/christina-rossetti', + 'https://www.instagram.com/levc_egm/', + 'https://www.patreon.com/CecilyRenns', + 'https://open.spotify.com/artist/63SNNpNOicDzG3LY82G4q3', + 'https://buzinkai.newgrounds.com/', + + // Just one custom domain of each platform is OK here + 'https://music.solatrus.com/', + 'https://types.pl/', + ]); + + quickSnapshotAllStyles('album', [ + 'https://youtu.be/abc', + 'https://youtube.com/watch?v=abc', + 'https://youtube.com/Playlist?list=kweh', + ]); }); |