diff --git a/plugins/packages/airtable/__tests__/airtable.test.js b/plugins/packages/airtable/__tests__/airtable.test.js index 5c2620603b..837caa33cc 100644 --- a/plugins/packages/airtable/__tests__/airtable.test.js +++ b/plugins/packages/airtable/__tests__/airtable.test.js @@ -4,36 +4,38 @@ const airtable = require('../lib'); const nock = require('nock'); describe('airtable', () => { - const _airtable = new airtable.default() - describe('airtable operations', () => { - const sourceOptions = { api_key: '123456' }; - test('#list_records', async () => { - nock(`https://api.airtable.com`).get('/v0/1/consumer/').query({ pageSize: '', offset: '' }) + const _airtable = new airtable.default(); + describe('airtable operations', () => { + const sourceOptions = { api_key: '123456' }; + test('#list_records', async () => { + nock(`https://api.airtable.com`) + .get('/v0/1/consumer/') + .query({ pageSize: '', offset: '' }) .reply(200, { message: 'ok' }); - const queryOptions = { operation: 'list_records', base_id: 1, table_name: 'consumer' } - const response = await _airtable.run(sourceOptions, queryOptions); - expect(response.status).toEqual('ok'); - }); - - test('#retrieve_record', async () => { - nock(`https://api.airtable.com`).get('/v0/1/consumer/1').reply(200, { message: 'ok' }); - const queryOptions = { operation: 'retrieve_record', base_id: 1, table_name: 'consumer', record_id: 1 } - const response = await _airtable.run(sourceOptions, queryOptions); - expect(response.status).toEqual('ok'); - }); - - test('#update_record', async () => { - nock(`https://api.airtable.com`).intercept('/v0/1/consumer', 'patch').reply(200, { message: 'ok' }); - const queryOptions = { operation: 'update_record', base_id: 1, table_name: 'consumer', record_id: 1, body: "{}" } - const response = await _airtable.run(sourceOptions, queryOptions); - expect(response.status).toEqual('ok'); - }); - - test('#delete_record', async () => { - nock(`https://api.airtable.com`).intercept('/v0/1/consumer/1', 'delete').reply(200, { message: 'ok' }); - const queryOptions = { operation: 'delete_record', base_id: 1, table_name: 'consumer', record_id: 1 } - const response = await _airtable.run(sourceOptions, queryOptions); - expect(response.status).toEqual('ok'); - }); + const queryOptions = { operation: 'list_records', base_id: 1, table_name: 'consumer' }; + const response = await _airtable.run(sourceOptions, queryOptions); + expect(response.status).toEqual('ok'); }); + + test('#retrieve_record', async () => { + nock(`https://api.airtable.com`).get('/v0/1/consumer/1').reply(200, { message: 'ok' }); + const queryOptions = { operation: 'retrieve_record', base_id: 1, table_name: 'consumer', record_id: 1 }; + const response = await _airtable.run(sourceOptions, queryOptions); + expect(response.status).toEqual('ok'); + }); + + test('#update_record', async () => { + nock(`https://api.airtable.com`).intercept('/v0/1/consumer', 'patch').reply(200, { message: 'ok' }); + const queryOptions = { operation: 'update_record', base_id: 1, table_name: 'consumer', record_id: 1, body: '{}' }; + const response = await _airtable.run(sourceOptions, queryOptions); + expect(response.status).toEqual('ok'); + }); + + test('#delete_record', async () => { + nock(`https://api.airtable.com`).intercept('/v0/1/consumer/1', 'delete').reply(200, { message: 'ok' }); + const queryOptions = { operation: 'delete_record', base_id: 1, table_name: 'consumer', record_id: 1 }; + const response = await _airtable.run(sourceOptions, queryOptions); + expect(response.status).toEqual('ok'); + }); + }); }); diff --git a/plugins/packages/bigquery/__tests__/index.js b/plugins/packages/bigquery/__tests__/index.js index 4796e892b2..daf84123bd 100644 --- a/plugins/packages/bigquery/__tests__/index.js +++ b/plugins/packages/bigquery/__tests__/index.js @@ -1,6 +1,6 @@ 'use strict'; -const bigquery = require('../lib'); +// const bigquery = require('../lib'); describe('bigquery', () => { it.todo('needs tests'); diff --git a/plugins/packages/common/__tests__/utils.test.js b/plugins/packages/common/__tests__/utils.test.js index 47a5babb11..0fd4e7b39a 100644 --- a/plugins/packages/common/__tests__/utils.test.js +++ b/plugins/packages/common/__tests__/utils.test.js @@ -1,7 +1,7 @@ 'use strict'; -const common = require('../lib/utils.helper'); +// const common = require('../lib/utils.helper'); describe('common', () => { - it.todo('needs tests'); + it.todo('needs tests'); }); diff --git a/plugins/packages/couchdb/__tests_/index.js b/plugins/packages/couchdb/__tests_/index.js index d43df77028..cf2608b709 100644 --- a/plugins/packages/couchdb/__tests_/index.js +++ b/plugins/packages/couchdb/__tests_/index.js @@ -1,7 +1,7 @@ 'use strict'; -const couchdb = require('../lib'); +// const couchdb = require('../lib'); describe('couchdb', () => { - it.todo('needs tests'); -}); \ No newline at end of file + it.todo('needs tests'); +}); diff --git a/plugins/packages/couchdb/lib/index.ts b/plugins/packages/couchdb/lib/index.ts index 640f5bf840..e713c1f0cb 100644 --- a/plugins/packages/couchdb/lib/index.ts +++ b/plugins/packages/couchdb/lib/index.ts @@ -1,75 +1,50 @@ -import { - QueryError, - QueryResult, - QueryService, - ConnectionTestResult, -} from "@tooljet-plugins/common"; -import { SourceOptions, QueryOptions } from "./types"; -import got from "got"; -const JSON5 = require("json5"); +import { QueryError, QueryResult, QueryService, ConnectionTestResult } from '@tooljet-plugins/common'; +import { SourceOptions, QueryOptions } from './types'; +import got from 'got'; +const JSON5 = require('json5'); export default class Couchdb implements QueryService { - async run( - sourceOptions: SourceOptions, - queryOptions: QueryOptions - ): Promise { + async run(sourceOptions: SourceOptions, queryOptions: QueryOptions): Promise { let result = {}; let response = null; - const { - operation, - record_id, - limit, - view_url, - start_key, - end_key, - skip, - descending, - include_docs - } = queryOptions; - const { username, password, port, host, database, protocol } = - sourceOptions; + const { operation, record_id, limit, view_url, start_key, end_key, skip, descending, include_docs } = queryOptions; + const { username, password, port, host, database, protocol } = sourceOptions; const revision_id = queryOptions.rev_id; const authHeader = () => { const combined = `${username}:${password}`; - const key = Buffer.from(combined).toString("base64"); + const key = Buffer.from(combined).toString('base64'); return { Authorization: `Basic ${key}` }; }; try { switch (operation) { - case "list_records": { - response = await got( - `${protocol}://${host}:${port}/${database}/_all_docs`, - { - method: "get", - headers: authHeader(), - searchParams: { - ...(limit?.length > 0 && { limit }), - ...(skip?.length > 0 && { skip }), - ...(descending && { descending }), - ...(include_docs && { include_docs }), - }, - } - ); + case 'list_records': { + response = await got(`${protocol}://${host}:${port}/${database}/_all_docs`, { + method: 'get', + headers: authHeader(), + searchParams: { + ...(limit?.length > 0 && { limit }), + ...(skip?.length > 0 && { skip }), + ...(descending && { descending }), + ...(include_docs && { include_docs }), + }, + }); result = this.parseJSON(response.body); break; } - case "retrieve_record": { - response = await got( - `${protocol}://${host}:${port}/${database}/${record_id}`, - { - headers: authHeader(), - method: "get", - } - ); + case 'retrieve_record': { + response = await got(`${protocol}://${host}:${port}/${database}/${record_id}`, { + headers: authHeader(), + method: 'get', + }); result = this.parseJSON(response.body); break; } - case "create_record": { + case 'create_record': { response = await got(`${protocol}://${host}:${port}/${database}`, { - method: "post", + method: 'post', headers: authHeader(), json: { records: this.parseJSON(queryOptions.body), @@ -79,53 +54,44 @@ export default class Couchdb implements QueryService { break; } - case "update_record": { - response = await got( - `${protocol}://${host}:${port}/${database}/${record_id}`, - { - method: "put", - headers: authHeader(), - json: { - _rev: revision_id, - records: this.parseJSON(queryOptions.body), - }, - } - ); + case 'update_record': { + response = await got(`${protocol}://${host}:${port}/${database}/${record_id}`, { + method: 'put', + headers: authHeader(), + json: { + _rev: revision_id, + records: this.parseJSON(queryOptions.body), + }, + }); result = this.parseJSON(response.body); break; } - case "delete_record": { - response = await got( - `${protocol}://${host}:${port}/${database}/${record_id}`, - { - method: "delete", - headers: authHeader(), - searchParams: { - rev: revision_id, - }, - } - ); + case 'delete_record': { + response = await got(`${protocol}://${host}:${port}/${database}/${record_id}`, { + method: 'delete', + headers: authHeader(), + searchParams: { + rev: revision_id, + }, + }); result = this.parseJSON(response.body); break; } - case "find": { - response = await got( - `${protocol}://${host}:${port}/${database}/_find`, - { - method: "post", - headers: authHeader(), - json: this.parseJSON(queryOptions.body), - } - ); + case 'find': { + response = await got(`${protocol}://${host}:${port}/${database}/_find`, { + method: 'post', + headers: authHeader(), + json: this.parseJSON(queryOptions.body), + }); result = this.parseJSON(response.body); break; } - case "get_view": { + case 'get_view': { response = await got(`${view_url}`, { - method: "get", + method: 'get', headers: authHeader(), searchParams: { ...(limit?.length > 0 && { limit }), @@ -141,32 +107,30 @@ export default class Couchdb implements QueryService { } } catch (error) { console.log(error); - throw new QueryError("Query could not be completed", error.message, {}); + throw new QueryError('Query could not be completed', error.message, {}); } return { - status: "ok", + status: 'ok', data: result, }; } - async testConnection( - sourceOptions: SourceOptions - ): Promise { - const { username, password, port, host, database, protocol } = - sourceOptions; + async testConnection(sourceOptions: SourceOptions): Promise { + // eslint-disable-next-line @typescript-eslint/no-unused-vars + const { username, password, port, host, database, protocol } = sourceOptions; const combined = `${username}:${password}`; - const key = Buffer.from(combined).toString("base64"); + const key = Buffer.from(combined).toString('base64'); const client = await got(`${protocol}://${host}:${port}/_all_dbs`, { - method: "get", + method: 'get', headers: { Authorization: `Basic ${key}` }, }); if (!client) { - throw new Error("Error"); + throw new Error('Error'); } return { - status: "ok", + status: 'ok', }; } diff --git a/plugins/packages/couchdb/lib/types.ts b/plugins/packages/couchdb/lib/types.ts index abe7f7e1e6..01242c68f8 100644 --- a/plugins/packages/couchdb/lib/types.ts +++ b/plugins/packages/couchdb/lib/types.ts @@ -1,22 +1,21 @@ export type SourceOptions = { username: string; password: string; - database: string; + database: string; port: string; - host:string; - protocol: string; + host: string; + protocol: string; }; export type QueryOptions = { operation: string; record_id: string; body: string; - rev_id:string; - view_url:string; - start_key?:string; - end_key?:string; - limit?:string; - skip?:string; - descending?:boolean; - include_docs?:boolean; - + rev_id: string; + view_url: string; + start_key?: string; + end_key?: string; + limit?: string; + skip?: string; + descending?: boolean; + include_docs?: boolean; }; diff --git a/plugins/packages/couchdb/package-lock.json b/plugins/packages/couchdb/package-lock.json new file mode 100644 index 0000000000..d52f5d885c --- /dev/null +++ b/plugins/packages/couchdb/package-lock.json @@ -0,0 +1,99 @@ +{ + "name": "@tooljet-plugins/couchdb", + "version": "1.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "@tooljet-plugins/couchdb", + "version": "1.0.0", + "dependencies": { + "@tooljet-plugins/common": "file:../common", + "react": "^17.0.2" + } + }, + "../common": { + "version": "1.0.0", + "dependencies": { + "react": "^17.0.2", + "rimraf": "^3.0.2" + } + }, + "node_modules/@tooljet-plugins/common": { + "resolved": "../common", + "link": true + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", + "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + } + }, + "dependencies": { + "@tooljet-plugins/common": { + "version": "file:../common", + "requires": { + "react": "^17.0.2", + "rimraf": "^3.0.2" + } + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "react": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", + "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + } + } +} diff --git a/plugins/packages/dynamodb/__tests__/dynamodb.test.js b/plugins/packages/dynamodb/__tests__/dynamodb.test.js index ecb324eead..f5d1d9eed6 100644 --- a/plugins/packages/dynamodb/__tests__/dynamodb.test.js +++ b/plugins/packages/dynamodb/__tests__/dynamodb.test.js @@ -1,7 +1,7 @@ 'use strict'; -const dynamodb = require('../lib'); +// const dynamodb = require('../lib'); describe('dynamodb', () => { - it.todo('needs tests'); + it.todo('needs tests'); }); diff --git a/plugins/packages/elasticsearch/__tests__/elasticsearch.test.js b/plugins/packages/elasticsearch/__tests__/elasticsearch.test.js index 7874575d0e..d87c4d39ef 100644 --- a/plugins/packages/elasticsearch/__tests__/elasticsearch.test.js +++ b/plugins/packages/elasticsearch/__tests__/elasticsearch.test.js @@ -1,7 +1,7 @@ 'use strict'; -const elasticsearch = require('../lib'); +// const elasticsearch = require('../lib'); describe('elasticsearch', () => { - it.todo('needs tests'); + it.todo('needs tests'); }); diff --git a/plugins/packages/firestore/__tests__/firestore.test.js b/plugins/packages/firestore/__tests__/firestore.test.js index 1c8c64a7a7..981396c5d8 100644 --- a/plugins/packages/firestore/__tests__/firestore.test.js +++ b/plugins/packages/firestore/__tests__/firestore.test.js @@ -1,7 +1,7 @@ 'use strict'; -const firestore = require('../lib'); +// const firestore = require('../lib'); describe('firestore', () => { - it.todo('needs tests'); + it.todo('needs tests'); }); diff --git a/plugins/packages/gcs/__tests__/gcs.test.js b/plugins/packages/gcs/__tests__/gcs.test.js index 5d38601e00..531e58f646 100644 --- a/plugins/packages/gcs/__tests__/gcs.test.js +++ b/plugins/packages/gcs/__tests__/gcs.test.js @@ -1,7 +1,7 @@ 'use strict'; -const gcs = require('../lib'); +// const gcs = require('../lib'); describe('gcs', () => { - it.todo('needs tests'); + it.todo('needs tests'); }); diff --git a/plugins/packages/googlesheets/__tests__/googlesheets.test.js b/plugins/packages/googlesheets/__tests__/googlesheets.test.js index 89de2a501a..89c82e4879 100644 --- a/plugins/packages/googlesheets/__tests__/googlesheets.test.js +++ b/plugins/packages/googlesheets/__tests__/googlesheets.test.js @@ -1,30 +1,74 @@ 'use strict'; -const { makeRequestBodyToBatchUpdate } =require('../lib/operations'); +const { makeRequestBodyToBatchUpdate } = require('../lib/operations'); describe('googlesheets', () => { - it('should generate the request body for update operation' ,() => { - const requestBody = { - caseOne: { Gender: 'Female' }, - caseTwo: { extra: '0 points' }, - caseThree: { Gender: 'Female', extra: '0 points' } - } - const filterCondition = { key: 'Student Name', value: 'Anna' } - const filterOperator = '===' - const data = [ - [ 'ID', '1', '2' ],[ 'Student Name', 'John', 'Anna' ],[ 'Major', 'Science', 'English' ],[],[ 'Gender', 'Male', 'Female' ],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[ 'extra', 'extra-update', '0 points' ] - ] + it('should generate the request body for update operation', () => { + const requestBody = { + caseOne: { Gender: 'Female' }, + caseTwo: { extra: '0 points' }, + caseThree: { Gender: 'Female', extra: '0 points' }, + }; + const filterCondition = { key: 'Student Name', value: 'Anna' }; + const filterOperator = '==='; + const data = [ + ['ID', '1', '2'], + ['Student Name', 'John', 'Anna'], + ['Major', 'Science', 'English'], + [], + ['Gender', 'Male', 'Female'], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + [], + ['extra', 'extra-update', '0 points'], + ]; - const queryOptionsOne = { requestBody: requestBody.caseOne, filterCondition, filterOperator, data } - const queryOptionsTwo = { requestBody: requestBody.caseTwo, filterCondition, filterOperator, data } - const queryOptionsThree = { requestBody: requestBody.caseThree, filterCondition, filterOperator, data } + const queryOptionsOne = { requestBody: requestBody.caseOne, filterCondition, filterOperator, data }; + const queryOptionsTwo = { requestBody: requestBody.caseTwo, filterCondition, filterOperator, data }; + const queryOptionsThree = { requestBody: requestBody.caseThree, filterCondition, filterOperator, data }; - const expectedBodyForCaseOne = makeRequestBodyToBatchUpdate(queryOptionsOne.requestBody, queryOptionsOne.filterCondition, queryOptionsOne.filterOperator, queryOptionsOne.data) - const expectedBodyForCaseTwo = makeRequestBodyToBatchUpdate(queryOptionsTwo.requestBody, queryOptionsOne.filterCondition, queryOptionsOne.filterOperator, queryOptionsOne.data) - const expectedBodyForCaseThree = makeRequestBodyToBatchUpdate(queryOptionsThree.requestBody, queryOptionsOne.filterCondition, queryOptionsOne.filterOperator, queryOptionsOne.data) + const expectedBodyForCaseOne = makeRequestBodyToBatchUpdate( + queryOptionsOne.requestBody, + queryOptionsOne.filterCondition, + queryOptionsOne.filterOperator, + queryOptionsOne.data + ); + const expectedBodyForCaseTwo = makeRequestBodyToBatchUpdate( + queryOptionsTwo.requestBody, + queryOptionsOne.filterCondition, + queryOptionsOne.filterOperator, + queryOptionsOne.data + ); + const expectedBodyForCaseThree = makeRequestBodyToBatchUpdate( + queryOptionsThree.requestBody, + queryOptionsOne.filterCondition, + queryOptionsOne.filterOperator, + queryOptionsOne.data + ); - - expect(expectedBodyForCaseOne).toEqual([{ cellValue: 'Female', cellIndex: 'E3' }]); - expect(expectedBodyForCaseTwo).toEqual([{ cellValue: '0 points', cellIndex: 'AB3' }]); - expect(expectedBodyForCaseThree).toEqual([{ cellValue: 'Female', cellIndex: 'E3' }, { cellValue: '0 points', cellIndex: 'AB3' }]); - }); + expect(expectedBodyForCaseOne).toEqual([{ cellValue: 'Female', cellIndex: 'E3' }]); + expect(expectedBodyForCaseTwo).toEqual([{ cellValue: '0 points', cellIndex: 'AB3' }]); + expect(expectedBodyForCaseThree).toEqual([ + { cellValue: 'Female', cellIndex: 'E3' }, + { cellValue: '0 points', cellIndex: 'AB3' }, + ]); + }); }); diff --git a/plugins/packages/graphql/__tests__/graphql.test.js b/plugins/packages/graphql/__tests__/graphql.test.js index b2932778af..5215350e5e 100644 --- a/plugins/packages/graphql/__tests__/graphql.test.js +++ b/plugins/packages/graphql/__tests__/graphql.test.js @@ -3,19 +3,19 @@ const graphql = require('../lib'); describe('graphql', () => { - it('should query graphql datasources', async () => { - const sourceOptions = { - url: 'https://api.spacex.land/graphql/', - headers: [], - url_params: [], - }; - - const queryOptions = { query: '{ launchesPast(limit: 10) { mission_name } }' }; + it('should query graphql datasources', async () => { + const sourceOptions = { + url: 'https://api.spacex.land/graphql/', + headers: [], + url_params: [], + }; - const _graphql = new graphql.default() - - const result = await _graphql.run(sourceOptions, queryOptions, 'no-datasource-id'); - - expect(result.data['data']['launchesPast'].length).toBe(10); - }); + const queryOptions = { query: '{ launchesPast(limit: 10) { mission_name } }' }; + + const _graphql = new graphql.default(); + + const result = await _graphql.run(sourceOptions, queryOptions, 'no-datasource-id'); + + expect(result.data['data']['launchesPast'].length).toBe(10); + }); }); diff --git a/plugins/packages/mailgun/__tests_/index.js b/plugins/packages/mailgun/__tests_/index.js index f231391f7d..9a39549882 100644 --- a/plugins/packages/mailgun/__tests_/index.js +++ b/plugins/packages/mailgun/__tests_/index.js @@ -1,7 +1,7 @@ 'use strict'; -const mailgun = require('../lib'); +// const mailgun = require('../lib'); describe('mailgun', () => { - it.todo('needs tests'); -}); \ No newline at end of file + it.todo('needs tests'); +}); diff --git a/plugins/packages/mailgun/lib/index.ts b/plugins/packages/mailgun/lib/index.ts index 0392bdc406..25fffd6c41 100644 --- a/plugins/packages/mailgun/lib/index.ts +++ b/plugins/packages/mailgun/lib/index.ts @@ -1,5 +1,5 @@ -import { QueryError, QueryResult, QueryService, ConnectionTestResult } from '@tooljet-plugins/common'; -import {SourceOptions, QueryOptions, EmailOptions} from "./types"; +import { QueryError, QueryResult, QueryService } from '@tooljet-plugins/common'; +import { SourceOptions, QueryOptions, EmailOptions } from './types'; import MailgunSdk from 'mailgun.js'; import FormData from 'form-data'; @@ -10,7 +10,7 @@ export default class Mailgun implements QueryService { } const sdk = new MailgunSdk(FormData); - const mailgunOptions = {username: 'api', key: sourceOptions.api_key, url: null} + const mailgunOptions = { username: 'api', key: sourceOptions.api_key, url: null }; if (sourceOptions.eu_hosted) { mailgunOptions.url = 'https://api.eu.mailgun.net'; } @@ -21,8 +21,8 @@ export default class Mailgun implements QueryService { to: queryOptions.send_mail_to, from: queryOptions.send_mail_from, subject: queryOptions.subject, - text: queryOptions.text - } + text: queryOptions.text, + }; if (queryOptions.html && queryOptions.html.length > 0) { emailOptions.html = queryOptions.html; diff --git a/plugins/packages/minio/__tests__/minioapi.test.js b/plugins/packages/minio/__tests__/minioapi.test.js index c1adee2bd1..32f8b70552 100644 --- a/plugins/packages/minio/__tests__/minioapi.test.js +++ b/plugins/packages/minio/__tests__/minioapi.test.js @@ -1,7 +1,7 @@ 'use strict'; -const minioapi = require('../lib'); +// const minioapi = require('../lib'); describe('minioapi', () => { - it.todo('needs tests'); + it.todo('needs tests'); }); diff --git a/plugins/packages/mongodb/__tests__/mongodb.test.js b/plugins/packages/mongodb/__tests__/mongodb.test.js index ba3635c19f..dddbe379dc 100644 --- a/plugins/packages/mongodb/__tests__/mongodb.test.js +++ b/plugins/packages/mongodb/__tests__/mongodb.test.js @@ -1,7 +1,7 @@ -"use strict"; +'use strict'; -const mongodb = require("../lib"); +// const mongodb = require('../lib'); -describe("mongodb", () => { - it.todo("needs tests"); +describe('mongodb', () => { + it.todo('needs tests'); }); diff --git a/plugins/packages/mssql/__tests__/mssql.test.js b/plugins/packages/mssql/__tests__/mssql.test.js index 94967cc40a..f5d292e3df 100644 --- a/plugins/packages/mssql/__tests__/mssql.test.js +++ b/plugins/packages/mssql/__tests__/mssql.test.js @@ -1,7 +1,7 @@ 'use strict'; -const mssql = require('../lib'); +// const mssql = require('../lib'); describe('mssql', () => { - it.todo('needs tests'); + it.todo('needs tests'); }); diff --git a/plugins/packages/mssql/lib/index.ts b/plugins/packages/mssql/lib/index.ts index a2492ec7fa..ad266b0a4a 100644 --- a/plugins/packages/mssql/lib/index.ts +++ b/plugins/packages/mssql/lib/index.ts @@ -60,9 +60,9 @@ export default class MssqlQueryService implements QueryService { database: sourceOptions.database, port: +sourceOptions.port, options: { - encrypt: sourceOptions.azure ?? false - } - } + encrypt: sourceOptions.azure ?? false, + }, + }, }; return knex(config); diff --git a/plugins/packages/mysql/__tests__/mysql.test.js b/plugins/packages/mysql/__tests__/mysql.test.js index e0df398d1c..cf703d0cc9 100644 --- a/plugins/packages/mysql/__tests__/mysql.test.js +++ b/plugins/packages/mysql/__tests__/mysql.test.js @@ -21,8 +21,8 @@ describe('mysql', () => { ], }; - const _mysql = new mysql.default() - + const _mysql = new mysql.default(); + const builtQuery = await _mysql.buildBulkUpdateQuery(queryOptions); const expectedQuery = "UPDATE customers SET name = 'sam', email = 'sam@example.com' WHERE id = 1; UPDATE customers SET name = 'jon', email = 'jon@example.com' WHERE id = 2;"; diff --git a/plugins/packages/n8n/__tests__/index.js b/plugins/packages/n8n/__tests__/index.js index a8f9160281..93f77470d6 100644 --- a/plugins/packages/n8n/__tests__/index.js +++ b/plugins/packages/n8n/__tests__/index.js @@ -1,7 +1,7 @@ 'use strict'; -const n8n = require('../lib'); +// const n8n = require('../lib'); describe('n8n', () => { - it.todo('needs tests'); + it.todo('needs tests'); }); diff --git a/plugins/packages/postgresql/__tests__/postgresql.test.js b/plugins/packages/postgresql/__tests__/postgresql.test.js index 2a547ee954..ce065b94a6 100644 --- a/plugins/packages/postgresql/__tests__/postgresql.test.js +++ b/plugins/packages/postgresql/__tests__/postgresql.test.js @@ -3,30 +3,30 @@ const postgresql = require('../lib'); describe('postgresql', () => { - it('should generate the query for bulk update operation', async () => { - const queryOptions = { - table: 'customers', - primary_key_column: 'id', - records: [ - { - id: 1, - name: 'sam', - email: 'sam@example.com', - }, - { - id: 2, - name: 'jon', - email: 'jon@example.com', - }, - ], - }; + it('should generate the query for bulk update operation', async () => { + const queryOptions = { + table: 'customers', + primary_key_column: 'id', + records: [ + { + id: 1, + name: 'sam', + email: 'sam@example.com', + }, + { + id: 2, + name: 'jon', + email: 'jon@example.com', + }, + ], + }; - const _postgresql = new postgresql.default() - - const builtQuery = await _postgresql.buildBulkUpdateQuery(queryOptions); - const expectedQuery = - "UPDATE customers SET name = 'sam', email = 'sam@example.com' WHERE id = 1; UPDATE customers SET name = 'jon', email = 'jon@example.com' WHERE id = 2;"; - - expect(builtQuery).toBe(expectedQuery); - }); + const _postgresql = new postgresql.default(); + + const builtQuery = await _postgresql.buildBulkUpdateQuery(queryOptions); + const expectedQuery = + "UPDATE customers SET name = 'sam', email = 'sam@example.com' WHERE id = 1; UPDATE customers SET name = 'jon', email = 'jon@example.com' WHERE id = 2;"; + + expect(builtQuery).toBe(expectedQuery); + }); }); diff --git a/plugins/packages/redis/__tests__/redis.test.js b/plugins/packages/redis/__tests__/redis.test.js index a9a590a4db..059176b27d 100644 --- a/plugins/packages/redis/__tests__/redis.test.js +++ b/plugins/packages/redis/__tests__/redis.test.js @@ -1,7 +1,7 @@ 'use strict'; -const redis = require('../lib'); +// const redis = require('../lib'); describe('redis', () => { - it.todo('needs tests'); + it.todo('needs tests'); }); diff --git a/plugins/packages/restapi/__tests__/restapi.test.js b/plugins/packages/restapi/__tests__/restapi.test.js index c3099e60f4..ded175c8d2 100644 --- a/plugins/packages/restapi/__tests__/restapi.test.js +++ b/plugins/packages/restapi/__tests__/restapi.test.js @@ -1,7 +1,7 @@ 'use strict'; -const restapi = require('../lib'); +// const restapi = require('../lib'); describe('restapi', () => { - it.todo('needs tests'); + it.todo('needs tests'); }); diff --git a/plugins/packages/s3/__tests__/s3.test.js b/plugins/packages/s3/__tests__/s3.test.js index ae7be06992..052e38c0d4 100644 --- a/plugins/packages/s3/__tests__/s3.test.js +++ b/plugins/packages/s3/__tests__/s3.test.js @@ -1,7 +1,7 @@ 'use strict'; -const s3 = require('../lib'); +// const s3 = require('../lib'); describe('s3', () => { - it.todo('needs tests'); + it.todo('needs tests'); }); diff --git a/plugins/packages/sendgrid/__tests__/sendgrid.test.js b/plugins/packages/sendgrid/__tests__/sendgrid.test.js index 7d654f4c22..bd70b2d6df 100644 --- a/plugins/packages/sendgrid/__tests__/sendgrid.test.js +++ b/plugins/packages/sendgrid/__tests__/sendgrid.test.js @@ -1,7 +1,7 @@ 'use strict'; -const sendgrid = require('../lib'); +// const sendgrid = require('../lib'); describe('sendgrid', () => { - it.todo('needs tests'); + it.todo('needs tests'); }); diff --git a/plugins/packages/slack/__tests__/slack.test.js b/plugins/packages/slack/__tests__/slack.test.js index 941aa12b78..f48ddb094d 100644 --- a/plugins/packages/slack/__tests__/slack.test.js +++ b/plugins/packages/slack/__tests__/slack.test.js @@ -1,7 +1,7 @@ 'use strict'; -const slack = require('../lib'); +// const slack = require('../lib'); describe('slack', () => { - it.todo('needs tests'); + it.todo('needs tests'); }); diff --git a/plugins/packages/smtp/__tests__/index.js b/plugins/packages/smtp/__tests__/index.js index fff605ae83..8b15726d96 100644 --- a/plugins/packages/smtp/__tests__/index.js +++ b/plugins/packages/smtp/__tests__/index.js @@ -1,6 +1,6 @@ 'use strict'; -const smtp = require('../lib'); +// const smtp = require('../lib'); describe('smtp', () => { it.todo('needs tests'); diff --git a/plugins/packages/snowflake/__tests__/index.js b/plugins/packages/snowflake/__tests__/index.js index cecb8b5c70..69b61e7949 100644 --- a/plugins/packages/snowflake/__tests__/index.js +++ b/plugins/packages/snowflake/__tests__/index.js @@ -1,6 +1,6 @@ 'use strict'; -const snowflake = require('../lib'); +// const snowflake = require('../lib'); describe('snowflake', () => { it.todo('needs tests'); diff --git a/plugins/packages/stripe/__tests__/stripe.test.js b/plugins/packages/stripe/__tests__/stripe.test.js index fa3e8728f9..a929b78160 100644 --- a/plugins/packages/stripe/__tests__/stripe.test.js +++ b/plugins/packages/stripe/__tests__/stripe.test.js @@ -1,7 +1,7 @@ 'use strict'; -const stripe = require('../lib'); +// const stripe = require('../lib'); describe('stripe', () => { - it.todo('needs tests'); + it.todo('needs tests'); }); diff --git a/plugins/packages/twilio/__tests__/twilioapi.test.js b/plugins/packages/twilio/__tests__/twilioapi.test.js index ae399c579a..086efebca2 100644 --- a/plugins/packages/twilio/__tests__/twilioapi.test.js +++ b/plugins/packages/twilio/__tests__/twilioapi.test.js @@ -1,7 +1,7 @@ 'use strict'; -const twilioapi = require('../lib'); +// const twilioapi = require('../lib'); describe('twilioapi', () => { - it.todo('needs tests'); + it.todo('needs tests'); }); diff --git a/plugins/packages/typesense/__tests__/typesenseapi.test.js b/plugins/packages/typesense/__tests__/typesenseapi.test.js index 9f21bde5e2..330c3b876e 100644 --- a/plugins/packages/typesense/__tests__/typesenseapi.test.js +++ b/plugins/packages/typesense/__tests__/typesenseapi.test.js @@ -1,7 +1,7 @@ 'use strict'; -const typesenseapi = require('../lib'); +// const typesenseapi = require('../lib'); describe('typesenseapi', () => { - it.todo('needs tests'); + it.todo('needs tests'); });