fix: 防止Bilibili卡片warn未处理拒绝
This commit is contained in:
parent
2e98c430d4
commit
89b7d0b281
@ -60,8 +60,9 @@ export function createBilibiliCardGenericHostAdapter(
|
||||
* @param message - Warning message safe for platform logs.
|
||||
*/
|
||||
warn: (message) => {
|
||||
const warn = host.warn;
|
||||
if (typeof warn === 'function') warn(message);
|
||||
void callBilibiliCardGenericHost(host, 'warn', message).catch(
|
||||
() => undefined,
|
||||
);
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
import { readBilibiliCardRuntimeConfig } from '../../../../../src/modules/qqbot/plugins/bilibili-card/src/config/bilibili-card-config';
|
||||
import type { BilibiliCardPluginHost } from '../../../../../src/modules/qqbot/plugins/bilibili-card/src/domain/bilibili-card.types';
|
||||
import { formatBilibiliVideoReply } from '../../../../../src/modules/qqbot/plugins/bilibili-card/src/domain/bilibili-reply-formatter';
|
||||
import { createBilibiliCardGenericHostAdapter } from '../../../../../src/modules/qqbot/plugins/bilibili-card/src/infrastructure/integration/bilibili-card-host';
|
||||
import { BilibiliVideoClient } from '../../../../../src/modules/qqbot/plugins/bilibili-card/src/infrastructure/integration/bilibili-video-client';
|
||||
|
||||
describe('Bilibili video client', () => {
|
||||
@ -147,6 +148,19 @@ describe('Bilibili video client', () => {
|
||||
maxRedirects: 10,
|
||||
});
|
||||
});
|
||||
|
||||
it('emits generic host warnings without surfacing rejected log calls', async () => {
|
||||
const host = {
|
||||
warn: jest.fn().mockRejectedValue(new Error('log down')),
|
||||
};
|
||||
const adapter = createBilibiliCardGenericHostAdapter(host, {});
|
||||
|
||||
adapter.warn?.('hello');
|
||||
await Promise.resolve();
|
||||
await Promise.resolve();
|
||||
|
||||
expect(host.warn).toHaveBeenCalledWith('hello');
|
||||
});
|
||||
});
|
||||
|
||||
/**
|
||||
|
||||
Loading…
Reference in New Issue
Block a user