feat(qdreader): add one-click task toggles
This commit is contained in:
@@ -613,3 +613,30 @@ test('delete account also clears per-account task prefs', () => {
|
||||
assert.match(r.replies[2], /已删除 uid: 12345/);
|
||||
assert.deepEqual(JSON.parse(r.store.qdreader_task_pref_json), {});
|
||||
});
|
||||
|
||||
|
||||
test('account task menu supports one-click enable and disable all optional tasks', () => {
|
||||
const store = {
|
||||
qdreader_cookie_json: JSON.stringify({ '12345': cookie }),
|
||||
qdreader_user_bind_json: JSON.stringify({ '12345': 'user-a' }),
|
||||
};
|
||||
const enable = runPlugin({ content: '启点账号', store: { ...store }, userId: 'user-a', listens: ['4', '1', 'all on'] });
|
||||
assert.match(enable.replies[3], /已一键开启账号 12\*\*\*45 的全部可选任务/);
|
||||
const prefs = JSON.parse(enable.store.qdreader_task_pref_json)['12345'];
|
||||
assert.equal(prefs.adv, true);
|
||||
assert.equal(prefs.extraAdv, true);
|
||||
assert.equal(prefs.lottery, true);
|
||||
assert.equal(prefs.weeklyExchange, true);
|
||||
assert.equal(prefs.chapterCard, true);
|
||||
assert.equal(prefs.messageBox, true);
|
||||
|
||||
const disable = runPlugin({ content: '启点账号', store: enable.store, userId: 'user-a', listens: ['4', '1', 'all off'] });
|
||||
assert.match(disable.replies[3], /已一键关闭账号 12\*\*\*45 的全部可选任务/);
|
||||
const disabled = JSON.parse(disable.store.qdreader_task_pref_json)['12345'];
|
||||
assert.equal(disabled.adv, false);
|
||||
assert.equal(disabled.extraAdv, false);
|
||||
assert.equal(disabled.lottery, false);
|
||||
assert.equal(disabled.weeklyExchange, false);
|
||||
assert.equal(disabled.chapterCard, false);
|
||||
assert.equal(disabled.messageBox, false);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user