| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 | /// <reference types="jest" />import type * as d from '@stencil/core/internal';import { InMemoryFileSystem } from '../compiler/sys/in-memory-fs';export declare function shuffleArray(array: any[]): any[];/** * Testing utility to validate the existence of some provided file paths using a specific file system * * @param fs the file system to use to validate the existence of some files * @param filePaths the paths to validate * @throws when one or more of the provided file paths cannot be found */export declare function expectFilesExist(fs: InMemoryFileSystem, filePaths: string[]): void;/** * Testing utility to validate the non-existence of some provided file paths using a specific file system * * @param fs the file system to use to validate the non-existence of some files * @param filePaths the paths to validate * @throws when one or more of the provided file paths is found */export declare function expectFilesDoNotExist(fs: InMemoryFileSystem, filePaths: string[]): void;export declare function getAppScriptUrl(config: d.ValidatedConfig, browserUrl: string): string;export declare function getAppStyleUrl(config: d.ValidatedConfig, browserUrl: string): string;/** * Utility for silencing `console` functions in tests. * * When this function is first called it grabs a reference to the `log`, * `error`, and `warn` functions on `console` and then returns a per-test setup * function which sets up a fresh set of mocks (via `jest.fn()`) and then * assigns them to each of these functions. This setup function will return a * reference to each of the three mock functions so tests can make assertions * about their calls and so on. * * Because references to the original `.log`, `.error`, and `.warn` functions * exist in closure within the function, it can use an `afterAll` call to clean * up after itself and ensure that the original implementations are restored * after the test suite finishes. * * An example of using this to silence log statements in a single test could look * like this: * * ```ts * describe("my-test-suite", () => { *   const setupConsoleMocks = setupConsoleMocker() * *   it("should log a message", () => { *     const { logMock } = setupConsoleMocks(); *     myFunctionWhichLogs(foo, bar); *     expect(logMock).toBeCalledWith('my log message'); *   }) * }) * ``` * * @returns a per-test mock setup function */export declare function setupConsoleMocker(): ConsoleMocker;interface ConsoleMocker {    (): {        logMock: jest.Mock<typeof console.log>;        warnMock: jest.Mock<typeof console.warn>;        errorMock: jest.Mock<typeof console.error>;    };}/** * the callback that `withSilentWarn` expects to receive. Basically receives a mock * as its argument and returns a `Promise`, the value of which is returns by `withSilentWarn` * as well. */declare type SilentWarnFunc<T> = (mock: jest.Mock<typeof console.warn>) => Promise<T>;/** * Wrap a single callback with a silent `console.warn`. The callback passed in * receives the mocking function as an argument, so you can easily make assertions * that it is called if necessary. * * @param cb a callback which `withSilentWarn` will call after replacing `console.warn` * with a mock. * @returns a Promise wrapping the return value of the callback */export declare function withSilentWarn<T>(cb: SilentWarnFunc<T>): Promise<T>;export {};
 |