Skip to content

Commit

Permalink
adding the most basic tests to the cli
Browse files Browse the repository at this point in the history
  • Loading branch information
gagoar committed May 14, 2020
1 parent 112afb2 commit 2470544
Show file tree
Hide file tree
Showing 14 changed files with 249 additions and 409 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
node_modules
.vscode/
# ignore codecoverage output
coverage/
15 changes: 5 additions & 10 deletions jest.config.js
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
module.exports = {
globals: {
"ts-jest": {
disableSourceMapSupport: true,
},
disableSourceMapSupport: true
}
},
verbose: true,
transform: {
"^.+\\.tsx?$": "ts-jest",
"^.+\\.tsx?$": "ts-jest"
},
preset: "ts-jest",
node: true,
moduleFileExtensions: ["ts", "tsx", "js", "jsx", "json", "node"],
testURL: "http://localhost",
transformIgnorePatterns: ["[/\\\\]node_modules[/\\\\].+\\.(js|jsx)$"],
Expand All @@ -18,11 +17,7 @@ module.exports = {
collectCoverageFrom: [
"config/**/*.{ts,tsx}",
"src/**/*.{ts,tsx}",
"!src/naptime/**/*",
],
coverageDirectory: "./coverage/",
watchPlugins: [
require.resolve("jest-watch-typeahead/filename"),
require.resolve("jest-watch-typeahead/testname"),
"!src/naptime/**/*"
],
coverageDirectory: "./coverage/"
};
5 changes: 0 additions & 5 deletions src/__mocks__/_slack_get_member_id_response.json

This file was deleted.

118 changes: 0 additions & 118 deletions src/__mocks__/_slack_post_im_open_response.json

This file was deleted.

100 changes: 0 additions & 100 deletions src/__mocks__/_slack_post_message_response.json

This file was deleted.

42 changes: 42 additions & 0 deletions src/__mocks__/aws-sdk/clients/ssm.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
/* eslint-disable @typescript-eslint/no-explicit-any */
/* eslint-disable @typescript-eslint/no-non-null-assertion */
import { SSM as RealSSM } from 'aws-sdk';
type SSMMOCKS = Record<string, any>
let ssmMocks = {} as SSMMOCKS;

type Dispatch = (response: Promise<any>, callback?: Function) => { promise: () => Promise<any> } | any
const dispatch: Dispatch = (response, callback?: Function) => {
if (!callback) {
return {
promise: () => response,
}
}
return response.then((result: RealSSM.DescribeParametersResult) => callback(null, result)).catch((err: Error) => callback(err, null));
}

const handleDescribeParameters = async (props: RealSSM.DescribeParametersRequest): Promise<Record<string, any>> => {
const [filter] = props.ParameterFilters!;

if (filter && filter.Key in ssmMocks) {
return ssmMocks[filter.Key];
} else {
return {}
}
};

export default class SSM {
static __setResponseForMethods(mock: SSMMOCKS) {
ssmMocks = { ...ssmMocks, ...mock };
}

static __showMockedPayloads() {
return { ...ssmMocks };
}

describeParameters(props: RealSSM.DescribeParametersRequest, callback?: Function) {
const promise = handleDescribeParameters(props);

return dispatch(promise, callback);

}
}
Loading

0 comments on commit 2470544

Please sign in to comment.