From 5f462e3d772aaebc75b790f964200b8876a84940 Mon Sep 17 00:00:00 2001 From: Soroush Date: Mon, 5 Apr 2021 11:07:06 -0700 Subject: [PATCH] Adds test to built in functions, adds missing declarations and typos --- .../tools/built-in-functions/jest.config.js | 7 ++ .../tools/built-in-functions/package.json | 6 +- .../__tests__/builtInFunctionsUtils.test.ts | 19 +++++ .../src/builtInFunctionsMap.ts | 84 +++++++++++++++++-- .../built-in-functions/tsconfig.build.json | 6 +- 5 files changed, 111 insertions(+), 11 deletions(-) create mode 100644 Composer/packages/tools/built-in-functions/jest.config.js create mode 100644 Composer/packages/tools/built-in-functions/src/__tests__/builtInFunctionsUtils.test.ts diff --git a/Composer/packages/tools/built-in-functions/jest.config.js b/Composer/packages/tools/built-in-functions/jest.config.js new file mode 100644 index 0000000000..d3bc294748 --- /dev/null +++ b/Composer/packages/tools/built-in-functions/jest.config.js @@ -0,0 +1,7 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. +/* eslint-disable @typescript-eslint/no-var-requires */ + +const { createConfig } = require('@botframework-composer/test-utils'); + +module.exports = createConfig('built-in-functions', 'node'); diff --git a/Composer/packages/tools/built-in-functions/package.json b/Composer/packages/tools/built-in-functions/package.json index 79531ca047..736c4a2177 100644 --- a/Composer/packages/tools/built-in-functions/package.json +++ b/Composer/packages/tools/built-in-functions/package.json @@ -4,7 +4,11 @@ "description": "", "main": "lib/index.js", "scripts": { - "build": "rimraf ./lib && tsc --build tsconfig.build.json" + "build": "rimraf ./lib && tsc --build tsconfig.build.json", + "test": "jest" + }, + "devDependencies": { + "@botframework-composer/test-utils": "*" }, "author": "Microsoft", "license": "MIT" diff --git a/Composer/packages/tools/built-in-functions/src/__tests__/builtInFunctionsUtils.test.ts b/Composer/packages/tools/built-in-functions/src/__tests__/builtInFunctionsUtils.test.ts new file mode 100644 index 0000000000..05ab7fab5f --- /dev/null +++ b/Composer/packages/tools/built-in-functions/src/__tests__/builtInFunctionsUtils.test.ts @@ -0,0 +1,19 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { builtInFunctionsGrouping } from '../builtInFunctionsGrouping'; +import { getBuiltInFunctionInsertText } from '../builtInFunctionsUtils'; + +// List of all built in functions +const builtInFunctionNames = builtInFunctionsGrouping.reduce((acc, item) => { + acc.push(...item.children); + return acc; +}, []); + +describe('Built-in functions', () => { + test.each(builtInFunctionNames)('given %p as function name, returns function call insert text', (functionName) => { + const result = getBuiltInFunctionInsertText(functionName); + // Expect it to have a string value that is not empty + expect(!!result).toBeTruthy(); + }); +}); diff --git a/Composer/packages/tools/built-in-functions/src/builtInFunctionsMap.ts b/Composer/packages/tools/built-in-functions/src/builtInFunctionsMap.ts index 9e8771b7cf..9edeb783ad 100644 --- a/Composer/packages/tools/built-in-functions/src/builtInFunctionsMap.ts +++ b/Composer/packages/tools/built-in-functions/src/builtInFunctionsMap.ts @@ -287,7 +287,7 @@ export const buildInFunctionsMap: Map = new Map = new Map = new Map = new Map = new Map = new Map = new Map = new Map = new Map