testcontainers-dynamodb
Version:
Testcontainers DynamoDB is a NodeJS library that supports tests, providing lightweight, throwaway instances of DynamoDB local database
38 lines (37 loc) • 1.66 kB
TypeScript
/// <reference types="node" />
import { GenericContainer, StartedTestContainer, StoppedTestContainer } from 'testcontainers';
import { Command, ContainerName, ExecResult } from 'testcontainers/dist/docker-client';
import { Host } from 'testcontainers/dist/docker-client-factory';
import { Id } from 'testcontainers/dist/container';
import { Port } from 'testcontainers/dist/port';
import { StopOptions } from 'testcontainers/dist/test-container';
import { DynamoDB } from 'aws-sdk';
export declare class StartedDynamoDBContainer implements StartedTestContainer {
private readonly startedContainer;
private readonly initData;
constructor(startedContainer: StartedTestContainer, initData: Array<TableInitStructure>);
exec(command: Command[]): Promise<ExecResult>;
getContainerIpAddress(): Host;
getId(): Id;
getMappedPort(port: Port): Port;
getName(): ContainerName;
logs(): Promise<NodeJS.ReadableStream>;
stop(options?: Partial<StopOptions>): Promise<StoppedTestContainer>;
endpointUrl(): string;
private get clientConfig();
createDocumentClient(): DynamoDB.DocumentClient;
createDynamoClient(): DynamoDB;
resetData(overrideData?: Array<TableInitStructure>): Promise<void>;
private chunkArray;
}
export interface TableInitStructure {
table: DynamoDB.Types.CreateTableInput;
items?: Array<object>;
}
export declare class DynamoDBContainer extends GenericContainer {
private readonly initStructure;
private static readonly IMAGE_NAME;
static readonly MAPPED_PORT = 8000;
constructor(initStructure?: Array<TableInitStructure>);
start(): Promise<StartedDynamoDBContainer>;
}