From 43a2bf482e1ff9946fc4d213058f2998ae5f90cd Mon Sep 17 00:00:00 2001 From: Cloud Date: Tue, 20 Aug 2019 17:40:17 +0800 Subject: [PATCH] test: common-config (#2891) * test: common-config * test: common-config --- test/utils/common-config.js | 58 +++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/test/utils/common-config.js b/test/utils/common-config.js index 9f077ab24..cbd674621 100644 --- a/test/utils/common-config.js +++ b/test/utils/common-config.js @@ -1,4 +1,5 @@ const configUtils = require('../../lib/utils/common-config'); +const nock = require('nock'); describe('index', () => { it('transElemText', async () => { @@ -36,4 +37,61 @@ describe('index', () => { }; expect(configUtils.getProp(data, ['title'], $)).toBe('RSSHub'); }); + + it('buildData', async () => { + nock('http://rsshub.test') + .get('/buildData') + .reply(function() { + return [ + 200, + `
+ +
`, + ]; + }); + const data = await configUtils({ + link: 'http://rsshub.test/buildData', + url: 'http://rsshub.test/buildData', + title: `%title%`, + params: { + title: 'buildData', + }, + item: { + item: '.content li', + title: `$('a').text() + ' - %title%'`, + link: `$('a').attr('href')`, + description: `$('.description').html()`, + }, + }); + + expect(data).toMatchObject({ + link: 'http://rsshub.test/buildData', + title: 'buildData', + item: [ + { + description: 'RSSHub1', + guid: undefined, + link: '/1', + pubDate: undefined, + title: '1 - buildData', + }, + { + description: 'RSSHub2', + guid: undefined, + link: '/2', + pubDate: undefined, + title: '2 - buildData', + }, + ], + }); + }); });