Merge commit '9935767c623a478628f3ad9d188512769fcc419c'

This commit is contained in:
DIYgod
2019-01-09 18:28:11 +08:00
6 changed files with 30 additions and 11 deletions
+2 -2
View File
@@ -118,8 +118,8 @@ router.get('/bilibili/audio/:id', require('./routes/bilibili/audio'));
router.get('/bangumi/calendar/today', require('./routes/bangumi/calendar/today'));
router.get('/bangumi/subject/:id/:type', require('./routes/bangumi/subject'));
router.get('/bangumi/person/:id', require('./routes/bangumi/person'));
router.get('/bangumi/topic/:id', require('./routes/bangumi/group/reply.js'));
router.get('/bangumi/group/:id', require('./routes/bangumi/group/topic.js'));
router.get('/bangumi/topic/:id', require('./routes/bangumi/group/reply'));
router.get('/bangumi/group/:id', require('./routes/bangumi/group/topic'));
router.get('/bangumi/subject/:id', require('./routes/bangumi/subject'));
// 微博
+1 -1
View File
@@ -19,7 +19,7 @@ module.exports = async (ctx) => {
.map((_, elem) => ({
link: resolve_url(base_url, $('.subject a', elem).attr('href')),
title: $('.subject a', elem).attr('title'),
pubDate: DateTime.fromFormat($('.time', elem).text(), 'yyyy-L-dd'),
pubDate: DateTime.fromFormat($('.lastpost .time', elem).text(), 'yyyy-L-dd'),
description: 'Author: ' + $('.author a', elem).text() + '<br>' + 'Replay: ' + $('.posts', elem).text(),
}))
.get(),
+2 -1
View File
@@ -14,7 +14,7 @@ module.exports = async (ctx) => {
const $workEl = $el.find('.l');
return {
work: $workEl.text(),
workURL: `https://bgm.tv/${$workEl.attr('href')}`,
workURL: `https://bgm.tv${$workEl.attr('href')}`,
workInfo: $el.find('p.info').text(),
job: $el.find('.badge_job').text(),
};
@@ -28,6 +28,7 @@ module.exports = async (ctx) => {
title: `${personName}以${c.job}的身份参与了作品《${c.work}》`,
description: c.workInfo,
link: c.workURL,
pubDate: new Date(c.workInfo.substring(0, c.workInfo.indexOf(' /'))).toUTCString(),
})),
};
};
+17 -1
View File
@@ -1,4 +1,20 @@
{
"text": ["/"],
"rss": ["/bilibili/bangumi/21680", "/weibo/user/1195230310"]
"rss": [
"/rsshub/rss",
"/bilibili/bangumi/21680",
"/weibo/user/1195230310",
"/weibo/user2/1195230310",
"/weibo/keyword/rsshub",
"/weibo/search/hot",
"/bangumi/subject/240038",
"/bangumi/calendar/today",
"/bangumi/subject/240038/comments?minLength=100",
"/bangumi/subject/240038/blogs",
"/bangumi/subject/240038/topics",
"/bangumi/person/32943",
"/bangumi/group/boring",
"/bangumi/topic/24657",
"/dlu/jiaowu/news"
]
}
+2 -2
View File
@@ -2,7 +2,7 @@ const supertest = require('supertest');
const app = require('../lib/index');
const request = supertest(app.callback());
const cases = require('./cases.json');
const cases = require('./cases');
const statusCheck = require('./rules/status');
const check = require('./rules/index');
@@ -18,6 +18,6 @@ describe('response', () => {
it(`GET ${url}`, async () => {
const response = await request.get(url);
await check(response);
});
}, 10e4);
});
});
+6 -4
View File
@@ -4,9 +4,9 @@ const parser = new Parser();
function checkDate(date) {
expect(date).toEqual(expect.any(String));
expect(Date.parse(date)).toEqual(expect.any(Number));
expect(new Date() - new Date(date)).toBeGreaterThan(0);
// expect(new Date() - new Date(date)).toBeGreaterThan(0);
// date must be in 1 year
expect(new Date() - new Date(date)).toBeLessThan(1000 * 60 * 60 * 24 * 30 * 12);
// expect(new Date() - new Date(date)).toBeLessThan(1000 * 60 * 60 * 24 * 30 * 12);
}
module.exports = async (response) => {
@@ -28,9 +28,11 @@ module.exports = async (response) => {
expect(item.title).toEqual(expect.any(String));
expect(item.link).toEqual(expect.any(String));
expect(item.content).toEqual(expect.any(String));
expect(item.pubDate).toEqual(expect.any(String));
expect(item.guid).toEqual(expect.any(String));
checkDate(item.pubDate);
if (item.pubDate) {
expect(item.pubDate).toEqual(expect.any(String));
checkDate(item.pubDate);
}
// guid must be unique
expect(guids).not.toContain(item.guid);