UNPKG

@shelf/jest-dynamodb

Version:

Run your tests using Jest & DynamoDB local

33 lines (32 loc) 1.22 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = _default; var _dynamodbLocal = _interopRequireDefault(require("dynamodb-local")); var _deleteTables = _interopRequireDefault(require("./utils/delete-tables")); var _getConfig = _interopRequireDefault(require("./utils/get-config")); var _getRelevantTables = _interopRequireDefault(require("./utils/get-relevant-tables")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } const debug = require('debug')('jest-dynamodb'); async function _default(jestArgs) { // eslint-disable-next-line no-console debug('Teardown DynamoDB'); if (global.__DYNAMODB__) { const watching = jestArgs.watch || jestArgs.watchAll; if (!watching) { await _dynamodbLocal.default.stopChild(global.__DYNAMODB__); } } else { const dynamoDB = global.__DYNAMODB_CLIENT__; const { tables: targetTables } = await (0, _getConfig.default)(debug); const { TableNames: tableNames } = await dynamoDB.listTables({}); if (tableNames?.length) { await (0, _deleteTables.default)(dynamoDB, (0, _getRelevantTables.default)(tableNames, targetTables)); } } }