@microsoft/teams.apps
Version:
<p> <a href="https://www.npmjs.com/package/@microsoft/teams.apps" target="_blank"> <img src="https://img.shields.io/npm/v/@microsoft/teams.apps/latest" /> </a> <a href="https://www.npmjs.com/package/@microsoft/teams.apps?activeTab=code
31 lines (30 loc) • 1.06 kB
TypeScript
/**
* Test utilities for creating Apps in test environments
*/
import { App, AppOptions } from './app';
import { HttpMethod, IHttpServerAdapter, HttpRouteHandler } from './http/adapter';
import { IPlugin } from './types';
/**
* Mock HTTP adapter for testing
* Provides no-op implementations for all methods
*/
export declare class TestAdapter implements IHttpServerAdapter {
registerRoute(_method: HttpMethod, _path: string, _handler: HttpRouteHandler): void;
serveStatic(_path: string, _directory: string): void;
start(_port: number): Promise<void>;
stop(): Promise<void>;
}
/**
* Creates an App instance configured for testing
* Automatically uses TestAdapter if no httpServerAdapter is provided
*
* @param options App configuration options
* @returns App instance with TestAdapter
*
* @example
* const app = createTestApp({
* clientId: 'test-client-id',
* clientSecret: 'test-client-secret'
* });
*/
export declare function createTestApp<TPlugin extends IPlugin = IPlugin>(options?: AppOptions<TPlugin>): App<TPlugin>;