From ab03d975a402e1646c551bf8dcf87747536c019c Mon Sep 17 00:00:00 2001 From: Kiko Beats Date: Mon, 22 Jan 2018 23:33:34 +0100 Subject: [PATCH] Move soundcloud test --- .../__snapshots__/index.js.snap-shot | 12 +++++++ packages/metascraper-soundcloud/package.json | 9 +++++- .../test/.metascraperrc | 14 ++++++++ .../test/fixtures/song.html} | 0 packages/metascraper-soundcloud/test/index.js | 32 +++++++++++++++++++ .../metascraper-soundcloud/test/mocha.opts | 6 ++++ .../test/integration/soundcloud/index.js | 18 ----------- 7 files changed, 72 insertions(+), 19 deletions(-) create mode 100644 packages/metascraper-soundcloud/__snapshots__/index.js.snap-shot create mode 100644 packages/metascraper-soundcloud/test/.metascraperrc rename packages/{metascraper/test/integration/soundcloud/input.html => metascraper-soundcloud/test/fixtures/song.html} (100%) create mode 100644 packages/metascraper-soundcloud/test/index.js create mode 100644 packages/metascraper-soundcloud/test/mocha.opts delete mode 100644 packages/metascraper/test/integration/soundcloud/index.js diff --git a/packages/metascraper-soundcloud/__snapshots__/index.js.snap-shot b/packages/metascraper-soundcloud/__snapshots__/index.js.snap-shot new file mode 100644 index 000000000..c7de48ffd --- /dev/null +++ b/packages/metascraper-soundcloud/__snapshots__/index.js.snap-shot @@ -0,0 +1,12 @@ +exports['song 1'] = { + "author": "Beauty Brain", + "description": "Thanks for 5.000 likes on https://www.facebook.com/BeautyBrainMusic :D <3 <3 <3", + "date": "2014-01-27T16:19:55.000Z", + "image": "https://i1.sndcdn.com/artworks-000069142357-nwttc6-t500x500.jpg", + "lang": "en", + "logo": "https://a-v2.sndcdn.com/assets/images/sc-icons/ios-a62dfc8f.png", + "publisher": "SoundCloud", + "title": "Swag Bandicoot [FREE DOWNLOAD]", + "url": "https://soundcloud.com/beautybrainsp/beauty-brain-swag-bandicoot" +} + diff --git a/packages/metascraper-soundcloud/package.json b/packages/metascraper-soundcloud/package.json index 5e07714ed..6861d8f3d 100644 --- a/packages/metascraper-soundcloud/package.json +++ b/packages/metascraper-soundcloud/package.json @@ -24,6 +24,13 @@ "@metascraper/helpers": "^3.4.3" }, "devDependencies": { + "clear-module": "latest", + "lodash": "latest", + "metascraper": "latest", + "mocha": "latest", + "nyc": "latest", + "should": "latest", + "snap-shot": "latest", "standard": "latest" }, "engines": { @@ -33,7 +40,7 @@ "index.js" ], "scripts": { - "test": "exit 0" + "test": "NODE_PATH=.. TZ=UTC NODE_ENV=test nyc mocha test" }, "license": "MIT", "lint-staged": { diff --git a/packages/metascraper-soundcloud/test/.metascraperrc b/packages/metascraper-soundcloud/test/.metascraperrc new file mode 100644 index 000000000..d6d33546b --- /dev/null +++ b/packages/metascraper-soundcloud/test/.metascraperrc @@ -0,0 +1,14 @@ +{ + "rules": [ + "metascraper-soundcloud", + "metascraper-author", + "metascraper-date", + "metascraper-description", + "metascraper-image", + "metascraper-lang", + "metascraper-logo", + "metascraper-publisher", + "metascraper-title", + "metascraper-url" + ] +} diff --git a/packages/metascraper/test/integration/soundcloud/input.html b/packages/metascraper-soundcloud/test/fixtures/song.html similarity index 100% rename from packages/metascraper/test/integration/soundcloud/input.html rename to packages/metascraper-soundcloud/test/fixtures/song.html diff --git a/packages/metascraper-soundcloud/test/index.js b/packages/metascraper-soundcloud/test/index.js new file mode 100644 index 000000000..46139867c --- /dev/null +++ b/packages/metascraper-soundcloud/test/index.js @@ -0,0 +1,32 @@ +'use strict' + +const clearModule = require('clear-module') +const snapshot = require('snap-shot') +const { promisify } = require('util') +const { resolve } = require('path') +const fs = require('fs') + +const readFile = promisify(fs.readFile) + +let metascraper + +describe('metascraper-soundcloud', () => { + before(() => { + clearModule('metascraper') + process.env.METASCRAPER_CONFIG_CWD = __dirname + metascraper = require('metascraper') + }) + + after(() => { + clearModule('metascraper') + delete process.env.METASCRAPER_CONFIG_CWD + }) + + it('song', async () => { + const html = await readFile(resolve(__dirname, 'fixtures/song.html')) + const url = 'https://soundcloud.com/beautybrainsp/beauty-brain-swag-bandicoot' + + const metadata = await metascraper({ html, url }) + snapshot(metadata) + }) +}) diff --git a/packages/metascraper-soundcloud/test/mocha.opts b/packages/metascraper-soundcloud/test/mocha.opts new file mode 100644 index 000000000..bc69e8879 --- /dev/null +++ b/packages/metascraper-soundcloud/test/mocha.opts @@ -0,0 +1,6 @@ +--require should +--reporter spec +--timeout 120000 +--slow 300 +--bail +--recursive diff --git a/packages/metascraper/test/integration/soundcloud/index.js b/packages/metascraper/test/integration/soundcloud/index.js deleted file mode 100644 index a99082f23..000000000 --- a/packages/metascraper/test/integration/soundcloud/index.js +++ /dev/null @@ -1,18 +0,0 @@ -'use strict' - -const snapshot = require('snap-shot') -const { promisify } = require('util') -const { resolve } = require('path') - -const fs = require('fs') - -const metascraper = require('../../..') -const readFile = promisify(fs.readFile) - -const url = 'https://soundcloud.com/beautybrainsp/beauty-brain-swag-bandicoot' - -it('soundcloud', async () => { - const html = await readFile(resolve(__dirname, 'input.html')) - const metadata = await metascraper({ html, url }) - snapshot(metadata) -})