Files
openclaw/test/helpers/plugins/plugin-api.ts
Vincent Koc cb4fc58547 feat(plugins): move Bonjour discovery into bundled plugin
* fix(deps): detect constant dynamic imports in ownership audit

* feat(plugins): move bonjour discovery into bundled plugin

* test(plugins): remove moved bonjour core tests

* fix(plugins): harden bonjour disable and console restore

* fix(plugins): split gateway discovery ids from services

* fix(plugins): harden bonjour advertiser shutdown

* fix(plugins): clean up bonjour split lint
2026-04-23 23:29:51 -07:00

62 lines
1.9 KiB
TypeScript

import type { OpenClawPluginApi } from "openclaw/plugin-sdk/plugin-runtime";
type TestPluginApiInput = Partial<OpenClawPluginApi>;
export function createTestPluginApi(api: TestPluginApiInput = {}): OpenClawPluginApi {
return {
id: "test-plugin",
name: "test-plugin",
source: "test",
registrationMode: "full",
config: {},
runtime: {} as OpenClawPluginApi["runtime"],
logger: { info() {}, warn() {}, error() {}, debug() {} },
registerTool() {},
registerHook() {},
registerHttpRoute() {},
registerChannel() {},
registerGatewayMethod() {},
registerCli() {},
registerCliBackend() {},
registerTextTransforms() {},
registerService() {},
registerGatewayDiscoveryService() {},
registerReload() {},
registerNodeHostCommand() {},
registerSecurityAuditCollector() {},
registerConfigMigration() {},
registerAutoEnableProbe() {},
registerProvider() {},
registerSpeechProvider() {},
registerRealtimeTranscriptionProvider() {},
registerRealtimeVoiceProvider() {},
registerMediaUnderstandingProvider() {},
registerImageGenerationProvider() {},
registerMusicGenerationProvider() {},
registerVideoGenerationProvider() {},
registerWebFetchProvider() {},
registerWebSearchProvider() {},
registerInteractiveHandler() {},
onConversationBindingResolved() {},
registerCommand() {},
registerContextEngine() {},
registerCompactionProvider() {},
registerAgentHarness() {},
registerEmbeddedExtensionFactory() {},
registerCodexAppServerExtensionFactory() {},
registerDetachedTaskRuntime() {},
registerMemoryCapability() {},
registerMemoryPromptSection() {},
registerMemoryPromptSupplement() {},
registerMemoryCorpusSupplement() {},
registerMemoryFlushPlan() {},
registerMemoryRuntime() {},
registerMemoryEmbeddingProvider() {},
resolvePath(input: string) {
return input;
},
on() {},
...api,
};
}