diff --git a/.github/config/nodejs-dev.jsonc b/.github/config/nodejs-dev.jsonc index b876e28916..a4b89a3984 100644 --- a/.github/config/nodejs-dev.jsonc +++ b/.github/config/nodejs-dev.jsonc @@ -115,6 +115,7 @@ "datalabeling", "dialogflow", "discoveryengine", + "dlp", "document-warehouse", "endpoints/getting-started", "endpoints/getting-started-grpc", diff --git a/.github/config/nodejs-prod.jsonc b/.github/config/nodejs-prod.jsonc index c87765bbb6..aacf80187d 100644 --- a/.github/config/nodejs-prod.jsonc +++ b/.github/config/nodejs-prod.jsonc @@ -86,7 +86,6 @@ "dataproc", // GoogleError: Error submitting create cluster request: Multiple validation errors "datastore/functions", // [ERR_REQUIRE_ESM]: require() of ES Module "dialogflow-cx", // NOT_FOUND: com.google.apps.framework.request.NotFoundException: Agent 'undefined' does not exist - "dlp", // [ERR_REQUIRE_ESM]: require() of ES Module "document-ai", // [ERR_REQUIRE_ESM]: require() of ES Module "functions/billing", // (untested) Error: Request failed with status code 500 "functions/imagemagick", // (untested) Error: A bucket name is needed to use Cloud Storage diff --git a/dlp/ci-setup.json b/dlp/ci-setup.json new file mode 100644 index 0000000000..eb661b9b7f --- /dev/null +++ b/dlp/ci-setup.json @@ -0,0 +1,3 @@ +{ + "node-version": 18 +} diff --git a/dlp/package.json b/dlp/package.json index 2ba79f42e8..cc0df0a4bb 100644 --- a/dlp/package.json +++ b/dlp/package.json @@ -8,6 +8,7 @@ "files": [ "*.js" ], + "type": "module", "engines": { "node": ">=16.0.0" }, diff --git a/dlp/resources/harmless.txt b/dlp/resources/harmless.txt index 5666de37ab..aa8f96e391 100644 --- a/dlp/resources/harmless.txt +++ b/dlp/resources/harmless.txt @@ -1 +1 @@ -This file is mostly harmless. +This file is mostly harmless... diff --git a/dlp/system-test/deid.test.js b/dlp/system-test/deid.test.js index 3cc3a774d0..98891285f5 100644 --- a/dlp/system-test/deid.test.js +++ b/dlp/system-test/deid.test.js @@ -14,23 +14,23 @@ 'use strict'; -const path = require('path'); -const {assert} = require('chai'); -const {describe, it, before} = require('mocha'); -const fs = require('fs'); -const cp = require('child_process'); -const DLP = require('@google-cloud/dlp'); -const proxyquire = require('proxyquire'); -const sinon = require('sinon'); -const {MOCK_DATA} = require('./mockdata'); - -const execSync = cmd => cp.execSync(cmd, {encoding: 'utf-8'}); +import { join } from 'path'; +import { assert } from 'chai'; +import { describe, it, before } from 'mocha'; +import { readFileSync } from 'fs'; +import { execSync as _execSync } from 'child_process'; +import DLP, { DlpServiceClient } from '@google-cloud/dlp'; +import proxyquire from 'proxyquire'; +import { restore, stub, replace, assert as _assert, fake } from 'sinon'; +import { MOCK_DATA } from './mockdata'; + +const execSync = cmd => _execSync(cmd, {encoding: 'utf-8'}); const harmfulString = 'My SSN is 372819127'; const harmlessString = 'My favorite color is blue'; const surrogateType = 'SSN_TOKEN'; const csvFile = 'resources/dates.csv'; -const tempOutputFile = path.join(__dirname, 'temp.result.csv'); +const tempOutputFile = join(__dirname, 'temp.result.csv'); const dateShiftAmount = 30; const dateFields = 'birth_date,register_date'; const keyName = 'KEY_NAME'; @@ -46,7 +46,7 @@ const deidentifyTemplateId = 'MOCK_DEIDENTIFY_TEMPLATE'; const structuredDeidentifyTemplateId = 'MOCK_STRUCTURED_ DEIDENTIFY_TEMPLATE'; const imageRedactTemplateId = 'MOCK_IMAGE_REDACT_TEMPLATE'; -const client = new DLP.DlpServiceClient(); +const client = new DlpServiceClient(); describe('deid', () => { let projectId; @@ -55,7 +55,7 @@ describe('deid', () => { }); afterEach(async () => { - sinon.restore(); + restore(); }); // deidentify_masking @@ -110,8 +110,8 @@ describe('deid', () => { `Successfully saved date-shift output to ${outputCsvFile}` ); assert.notInclude( - fs.readFileSync(outputCsvFile).toString(), - fs.readFileSync(csvFile).toString() + readFileSync(outputCsvFile).toString(), + readFileSync(csvFile).toString() ); }); @@ -387,16 +387,15 @@ describe('deid', () => { wrappedKey ); - const mockDeidentifyContent = sinon - .stub() + const mockDeidentifyContent = stub() .resolves(CONSTANT_DATA.RESPONSE_DEIDENTIFY_CONTENT); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'deidentifyContent', mockDeidentifyContent ); - sinon.replace(console, 'log', () => sinon.stub()); + replace(console, 'log', () => stub()); const deIdentifyTableWithFpe = proxyquire('../deIdentifyTableWithFpe', { '@google-cloud/dlp': {DLP: DLP}, @@ -404,20 +403,20 @@ describe('deid', () => { await deIdentifyTableWithFpe(projectId, 'NUMERIC', keyName, wrappedKey); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockDeidentifyContent, CONSTANT_DATA.REQUEST_DEIDENTIFY_CONTENT ); }); it('should handle de-identification errors', async () => { - const mockDeidentifyContent = sinon.stub().rejects(new Error('Failed')); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockDeidentifyContent = stub().rejects(new Error('Failed')); + replace( + DlpServiceClient.prototype, 'deidentifyContent', mockDeidentifyContent ); - sinon.replace(console, 'log', () => sinon.stub()); + replace(console, 'log', () => stub()); const deIdentifyTableWithFpe = proxyquire('../deIdentifyTableWithFpe', { '@google-cloud/dlp': {DLP: DLP}, @@ -494,16 +493,15 @@ describe('deid', () => { 'EMAIL_ADDRESS_TOKEN' ); - const mockDeidentifyContent = sinon - .stub() + const mockDeidentifyContent = stub() .resolves(CONSTANT_DATA.RESPONSE_DEIDENTIFY_CONTENT); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'deidentifyContent', mockDeidentifyContent ); - sinon.replace(console, 'log', () => sinon.stub()); + replace(console, 'log', () => stub()); const deIdentifyWithDeterministic = proxyquire( '../deidentifyWithDeterministic.js', @@ -521,7 +519,7 @@ describe('deid', () => { 'EMAIL_ADDRESS_TOKEN' ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockDeidentifyContent, CONSTANT_DATA.REQUEST_DEIDENTIFY_CONTENT ); @@ -531,14 +529,14 @@ describe('deid', () => { const string = 'My name is Alicia Abernathy, and my email address is aabernathy@example.com.'; - const mockDeidentifyContent = sinon.stub().rejects(new Error('Failed')); + const mockDeidentifyContent = stub().rejects(new Error('Failed')); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'deidentifyContent', mockDeidentifyContent ); - sinon.replace(console, 'log', () => sinon.stub()); + replace(console, 'log', () => stub()); const deIdentifyWithDeterministic = proxyquire( '../deidentifyWithDeterministic.js', @@ -573,16 +571,15 @@ describe('deid', () => { 'EMAIL_ADDRESS_TOKEN' ); - const mockReidentifyContent = sinon - .stub() + const mockReidentifyContent = stub() .resolves(CONSTANT_DATA.RESPONSE_REIDENTIFY_CONTENT); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'reidentifyContent', mockReidentifyContent ); - sinon.replace(console, 'log', () => sinon.stub()); + replace(console, 'log', () => stub()); const reIdentifyWithDeterministic = proxyquire( '../reidentifyWithDeterministic.js', @@ -599,7 +596,7 @@ describe('deid', () => { 'EMAIL_ADDRESS_TOKEN' ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockReidentifyContent, CONSTANT_DATA.REQUEST_REIDENTIFY_CONTENT ); @@ -609,14 +606,14 @@ describe('deid', () => { const string = 'My name is Alicia Abernathy, and my email address is EMAIL_ADDRESS_TOKEN'; - const mockReidentifyContent = sinon.stub().rejects(new Error('Failed')); + const mockReidentifyContent = stub().rejects(new Error('Failed')); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'reidentifyContent', mockReidentifyContent ); - sinon.replace(console, 'log', () => sinon.stub()); + replace(console, 'log', () => stub()); const reIdentifyWithDeterministic = proxyquire( '../reidentifyWithDeterministic.js', @@ -701,16 +698,15 @@ describe('deid', () => { wrappedKey ); - const mockReidentifyContent = sinon - .stub() + const mockReidentifyContent = stub() .resolves(CONSTANT_DATA.RESPONSE_REIDENTIFY_CONTENT); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'reidentifyContent', mockReidentifyContent ); - sinon.replace(console, 'log', () => sinon.stub()); + replace(console, 'log', () => stub()); const reIdentifyTableWithFpe = proxyquire('../reidentifyTableWithFpe', { '@google-cloud/dlp': {DLP: DLP}, @@ -718,20 +714,20 @@ describe('deid', () => { await reIdentifyTableWithFpe(projectId, 'NUMERIC', keyName, wrappedKey); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockReidentifyContent, CONSTANT_DATA.REQUEST_REIDENTIFY_CONTENT ); }); it('should handle re-identification errors', async () => { - const mockReidentifyContent = sinon.stub().rejects(new Error('Failed')); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockReidentifyContent = stub().rejects(new Error('Failed')); + replace( + DlpServiceClient.prototype, 'reidentifyContent', mockReidentifyContent ); - sinon.replace(console, 'log', () => sinon.stub()); + replace(console, 'log', () => stub()); const reIdentifyTableWithFpe = proxyquire('../reidentifyTableWithFpe', { '@google-cloud/dlp': {DLP: DLP}, @@ -756,16 +752,15 @@ describe('deid', () => { 'PHONE_TOKEN' ); - const mockReidentifyContent = sinon - .stub() + const mockReidentifyContent = stub() .resolves(CONSTANT_DATA.RESPONSE_REIDENTIFY_CONTENT); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'reidentifyContent', mockReidentifyContent ); - sinon.replace(console, 'log', () => sinon.stub()); + replace(console, 'log', () => stub()); const reIdentifyTextWithFpe = proxyquire('../reidentifyTextWithFpe', { '@google-cloud/dlp': {DLP: DLP}, @@ -780,21 +775,21 @@ describe('deid', () => { 'PHONE_TOKEN' ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockReidentifyContent, CONSTANT_DATA.REQUEST_REIDENTIFY_CONTENT ); }); it('should handle re-identification errors', async () => { - const mockReidentifyContent = sinon.stub().rejects(new Error('Failed')); + const mockReidentifyContent = stub().rejects(new Error('Failed')); const text = 'My phone number is PHONE_TOKEN(10):9617256398'; - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'reidentifyContent', mockReidentifyContent ); - sinon.replace(console, 'log', () => sinon.stub()); + replace(console, 'log', () => stub()); const reIdentifyTextWithFpe = proxyquire('../reidentifyTextWithFpe', { '@google-cloud/dlp': {DLP: DLP}, @@ -927,19 +922,19 @@ describe('deid', () => { imageRedactTemplateId, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const deIdentifyCloudStorage = proxyquire('../deIdentifyCloudStorage', { '@google-cloud/dlp': {DLP: DLP}, @@ -955,11 +950,11 @@ describe('deid', () => { structuredDeidentifyTemplateId, imageRedactTemplateId ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateDlpJob, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should handle error if inspect cloud storage job fails', async () => { @@ -975,19 +970,19 @@ describe('deid', () => { imageRedactTemplateId, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_FAILED ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const deIdentifyCloudStorage = proxyquire('../deIdentifyCloudStorage', { '@google-cloud/dlp': {DLP: DLP}, @@ -1003,8 +998,8 @@ describe('deid', () => { structuredDeidentifyTemplateId, imageRedactTemplateId ); - sinon.assert.calledOnce(mockGetDlpJob); - sinon.assert.calledWithMatch( + _assert.calledOnce(mockGetDlpJob); + _assert.calledWithMatch( mockConsoleLog, 'Job Failed, Please check the configuration.' ); diff --git a/dlp/system-test/inspect.test.js b/dlp/system-test/inspect.test.js index 3d51f65817..c29a997e55 100644 --- a/dlp/system-test/inspect.test.js +++ b/dlp/system-test/inspect.test.js @@ -14,25 +14,25 @@ 'use strict'; -const {assert} = require('chai'); -const {describe, it, before, after, afterEach} = require('mocha'); -const proxyquire = require('proxyquire'); -const sinon = require('sinon'); -const cp = require('child_process'); -const {PubSub} = require('@google-cloud/pubsub'); +import { assert } from 'chai'; +import { describe, it, before, after, afterEach } from 'mocha'; +import proxyquire from 'proxyquire'; +import { restore, stub, replace, fake, assert as _assert } from 'sinon'; +import { execSync as _execSync } from 'child_process'; +import { PubSub } from '@google-cloud/pubsub'; const pubsub = new PubSub(); -const uuid = require('uuid'); -const DLP = require('@google-cloud/dlp'); +import { v4 } from 'uuid'; +import DLP, { DlpServiceClient, protos } from '@google-cloud/dlp'; -const {MOCK_DATA} = require('./mockdata'); +import { MOCK_DATA } from './mockdata'; const bucket = 'nodejs-dlp-test-bucket'; const dataProject = 'bigquery-public-data'; const datasetId = 'samples'; const tableId = 'github_nested'; -const execSync = cmd => cp.execSync(cmd, {encoding: 'utf-8'}); +const execSync = cmd => _execSync(cmd, {encoding: 'utf-8'}); -const client = new DLP.DlpServiceClient(); +const client = new DlpServiceClient(); describe('inspect', () => { let projectId; @@ -40,8 +40,8 @@ describe('inspect', () => { projectId = await client.getProjectId(); }); let topic, subscription, jobName; - const topicName = `dlp-inspect-topic-${uuid.v4()}`; - const subscriptionName = `dlp-inspect-subscription-${uuid.v4()}`; + const topicName = `dlp-inspect-topic-${v4()}`; + const subscriptionName = `dlp-inspect-subscription-${v4()}`; before(async () => { [topic] = await pubsub.createTopic(topicName); [subscription] = await topic.createSubscription(subscriptionName); @@ -55,7 +55,7 @@ describe('inspect', () => { // Delete DLP job created in the snippets. afterEach(async () => { - sinon.restore(); + restore(); if (!jobName) return; const request = { name: jobName, @@ -465,19 +465,18 @@ describe('inspect', () => { topicName, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -486,13 +485,13 @@ describe('inspect', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - sinon.replace(console, 'log', () => sinon.stub()); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + replace(console, 'log', () => stub()); const inspectBigqueryWithSampling = proxyquire( '../inspectBigQueryTableWithSampling', { @@ -512,11 +511,11 @@ describe('inspect', () => { topicName, subscriptionName ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateDlpJob, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should handle errors while creating inspection job', async () => { @@ -529,22 +528,20 @@ describe('inspect', () => { topicName, jobName ); - const mockCreateDlpJob = sinon - .stub() + const mockCreateDlpJob = stub() .rejects(new Error('Error while creating job')); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -553,15 +550,15 @@ describe('inspect', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockErrorHandler = sinon.stub(); - sinon.replace(process, 'on', mockErrorHandler); - sinon.replace(console, 'log', () => sinon.stub()); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockErrorHandler = stub(); + replace(process, 'on', mockErrorHandler); + replace(console, 'log', () => stub()); const inspectBigqueryWithSampling = proxyquire( '../inspectBigQueryTableWithSampling', { @@ -585,8 +582,8 @@ describe('inspect', () => { } catch (error) { console.log(error); } - sinon.assert.calledOnce(mockErrorHandler); - sinon.assert.notCalled(mockGetDlpJob); + _assert.calledOnce(mockErrorHandler); + _assert.notCalled(mockGetDlpJob); }); // dlp_inspect_string_multiple_rules @@ -643,19 +640,18 @@ describe('inspect', () => { infoTypes, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -664,13 +660,13 @@ describe('inspect', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - sinon.replace(console, 'log', () => sinon.stub()); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + replace(console, 'log', () => stub()); const inspectGcsWithSampling = proxyquire('../inspectGcsFileWithSampling', { '@google-cloud/dlp': {DLP: DLP}, @@ -684,11 +680,11 @@ describe('inspect', () => { subscriptionName, 'PERSON_NAME' ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateDlpJob, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should handle error while inspecting GCS file', async () => { @@ -702,19 +698,18 @@ describe('inspect', () => { infoTypes, jobName ); - const mockCreateDlpJob = sinon.stub().rejects(new Error('Failed')); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().rejects(new Error('Failed')); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -723,13 +718,13 @@ describe('inspect', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - sinon.replace(console, 'log', () => sinon.stub()); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + replace(console, 'log', () => stub()); const inspectGcsWithSampling = proxyquire('../inspectGcsFileWithSampling', { '@google-cloud/dlp': {DLP: DLP}, @@ -884,30 +879,30 @@ describe('inspect', () => { gcsUri, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const inspectGcsSendToScc = proxyquire('../inspectGcsSendToScc', { '@google-cloud/dlp': {DLP: DLP}, }); await inspectGcsSendToScc(projectId, gcsUri); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateDlpJob, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should handle error if inspect job results into failure', async () => { @@ -918,27 +913,27 @@ describe('inspect', () => { gcsUri, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_FAILED ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const inspectGcsSendToScc = proxyquire('../inspectGcsSendToScc', { '@google-cloud/dlp': {DLP: DLP}, }); await inspectGcsSendToScc(projectId, gcsUri); - sinon.assert.calledOnce(mockGetDlpJob); - sinon.assert.calledWithMatch( + _assert.calledOnce(mockGetDlpJob); + _assert.calledWithMatch( mockConsoleLog, 'Job Failed, Please check the configuration.' ); @@ -954,30 +949,30 @@ describe('inspect', () => { tableId, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const inspectBigquerySendToScc = proxyquire('../inspectBigquerySendToScc', { '@google-cloud/dlp': {DLP: DLP}, }); await inspectBigquerySendToScc(projectId, dataProject, datasetId, tableId); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateDlpJob, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should handle error if inspect job results into failure', async () => { @@ -989,27 +984,27 @@ describe('inspect', () => { tableId, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_FAILED ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const inspectBigQuerySendToScc = proxyquire('../inspectBigquerySendToScc', { '@google-cloud/dlp': {DLP: DLP}, }); await inspectBigQuerySendToScc(projectId, dataProject, datasetId, tableId); - sinon.assert.calledOnce(mockGetDlpJob); - sinon.assert.calledWithMatch( + _assert.calledOnce(mockGetDlpJob); + _assert.calledWithMatch( mockConsoleLog, 'Job Failed, Please check the configuration.' ); @@ -1026,19 +1021,19 @@ describe('inspect', () => { datastoreKind, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const inspectDatastoreSendToScc = proxyquire( '../inspectDatastoreSendToScc', @@ -1052,11 +1047,11 @@ describe('inspect', () => { datastoreNamespace, datastoreKind ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateDlpJob, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should handle error if inspect job results into failure', async () => { @@ -1069,19 +1064,19 @@ describe('inspect', () => { datastoreKind, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_FAILED ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const inspectDatastoreSendToScc = proxyquire( '../inspectDatastoreSendToScc', @@ -1095,8 +1090,8 @@ describe('inspect', () => { datastoreNamespace, datastoreKind ); - sinon.assert.calledOnce(mockGetDlpJob); - sinon.assert.calledWithMatch( + _assert.calledOnce(mockGetDlpJob); + _assert.calledWithMatch( mockConsoleLog, 'Job Failed, Please check the configuration.' ); @@ -1169,16 +1164,15 @@ describe('inspect', () => { string, infoTypeId ); - const mockInspectContent = sinon - .stub() + const mockInspectContent = stub() .resolves(DATA_CONSTANTS.RESPONSE_INSPECT_CONTENT); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'inspectContent', mockInspectContent ); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const inspectWithStoredInfotype = proxyquire( '../inspectWithStoredInfotype', @@ -1188,7 +1182,7 @@ describe('inspect', () => { ); await inspectWithStoredInfotype(projectId, infoTypeId, string); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockInspectContent, DATA_CONSTANTS.REQUEST_INSPECT_CONTENT ); @@ -1198,14 +1192,14 @@ describe('inspect', () => { const string = 'My phone number is (223) 456-7890 and my email address is gary@example.com.'; const infoTypeId = 'MOCK_INFOTYPE'; - const mockInspectContent = sinon.stub().rejects(new Error('Failed')); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockInspectContent = stub().rejects(new Error('Failed')); + replace( + DlpServiceClient.prototype, 'inspectContent', mockInspectContent ); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const inspectWithStoredInfotype = proxyquire( '../inspectWithStoredInfotype', @@ -1233,33 +1227,32 @@ describe('inspect', () => { jobName ); - const mockHybridInspectJobTrigger = sinon - .stub() + const mockHybridInspectJobTrigger = stub() .resolves([{name: jobName}]); - const mockActivateJobTrigger = sinon.stub().resolves([{name: jobName}]); - const mockFinishDlpJob = sinon.stub().resolves(); - const mockGetDlpJob = sinon.fake.resolves( + const mockActivateJobTrigger = stub().resolves([{name: jobName}]); + const mockFinishDlpJob = stub().resolves(); + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - const mockConsoleLog = sinon.stub(); + const mockConsoleLog = stub(); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'hybridInspectJobTrigger', mockHybridInspectJobTrigger ); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'activateJobTrigger', mockActivateJobTrigger ); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'finishDlpJob', mockFinishDlpJob ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + replace(console, 'log', mockConsoleLog); const inspectDataToHybridJobTrigger = proxyquire( '../inspectDataToHybridJobTrigger.js', @@ -1268,11 +1261,11 @@ describe('inspect', () => { } ); await inspectDataToHybridJobTrigger(projectId, string, jobTriggerId); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockHybridInspectJobTrigger, DATA_CONSTANTS.REQUEST_HYBRID_INSPECT_JOB_TRIGGER ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should inspect data using hybrid job trigger that is active', async () => { @@ -1286,38 +1279,37 @@ describe('inspect', () => { jobName ); - const mockHybridInspectJobTrigger = sinon - .stub() + const mockHybridInspectJobTrigger = stub() .resolves([{name: jobName}]); - const mockActivateJobTrigger = sinon.stub().rejects({code: 3}); - const mockFinishDlpJob = sinon.stub().resolves(); - const mockGetDlpJob = sinon.fake.resolves( + const mockActivateJobTrigger = stub().rejects({code: 3}); + const mockFinishDlpJob = stub().resolves(); + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - const mockConsoleLog = sinon.stub(); - const mockListDlpJobs = sinon.stub().resolves([[{name: jobName}]]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockConsoleLog = stub(); + const mockListDlpJobs = stub().resolves([[{name: jobName}]]); + replace( + DlpServiceClient.prototype, 'hybridInspectJobTrigger', mockHybridInspectJobTrigger ); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'activateJobTrigger', mockActivateJobTrigger ); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'finishDlpJob', mockFinishDlpJob ); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'listDlpJobs', mockListDlpJobs ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + replace(console, 'log', mockConsoleLog); const inspectDataToHybridJobTrigger = proxyquire( '../inspectDataToHybridJobTrigger.js', @@ -1326,11 +1318,11 @@ describe('inspect', () => { } ); await inspectDataToHybridJobTrigger(projectId, string, jobTriggerId); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockHybridInspectJobTrigger, DATA_CONSTANTS.REQUEST_HYBRID_INSPECT_JOB_TRIGGER ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockListDlpJobs, DATA_CONSTANTS.REQUEST_LIST_DLP_JOBS ); @@ -1347,34 +1339,32 @@ describe('inspect', () => { jobName ); - const mockHybridInspectJobTrigger = sinon - .stub() + const mockHybridInspectJobTrigger = stub() .resolves([{name: jobName}]); - const mockActivateJobTrigger = sinon - .stub() + const mockActivateJobTrigger = stub() .resolves([{name: jobTriggerId}]); - const mockFinishDlpJob = sinon.stub().resolves(); - const mockGetDlpJob = sinon.fake.resolves( + const mockFinishDlpJob = stub().resolves(); + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_FAILED ); - const mockConsoleLog = sinon.stub(); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockConsoleLog = stub(); + replace( + DlpServiceClient.prototype, 'hybridInspectJobTrigger', mockHybridInspectJobTrigger ); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'activateJobTrigger', mockActivateJobTrigger ); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'finishDlpJob', mockFinishDlpJob ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + replace(console, 'log', mockConsoleLog); const inspectDataToHybridJobTrigger = proxyquire( '../inspectDataToHybridJobTrigger.js', @@ -1383,8 +1373,8 @@ describe('inspect', () => { } ); await inspectDataToHybridJobTrigger(projectId, string, jobTriggerId); - sinon.assert.calledOnce(mockGetDlpJob); - sinon.assert.calledWithMatch( + _assert.calledOnce(mockGetDlpJob); + _assert.calledWithMatch( mockConsoleLog, 'Job Failed, Please check the configuration.' ); @@ -1399,25 +1389,24 @@ describe('inspect', () => { bucket, fileName, topicName, - DLP.protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, + protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, 0, infoTypes, undefined, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -1426,13 +1415,13 @@ describe('inspect', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - sinon.replace(console, 'log', () => sinon.stub()); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + replace(console, 'log', () => stub()); const inspectGCSFile = proxyquire('../inspectGCSFile', { '@google-cloud/dlp': {DLP: DLP}, @@ -1445,17 +1434,17 @@ describe('inspect', () => { fileName, topicName, subscriptionName, - DLP.protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, + protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, 0, 'PERSON_NAME', undefined, jobName ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateDlpJob, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should handle error while inspecting GCS file', async () => { @@ -1467,25 +1456,24 @@ describe('inspect', () => { bucket, fileName, topicName, - DLP.protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, + protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, 0, infoTypes, undefined, jobName ); - const mockCreateDlpJob = sinon.stub().rejects(new Error('Failed')); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().rejects(new Error('Failed')); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -1494,13 +1482,13 @@ describe('inspect', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - sinon.replace(console, 'log', () => sinon.stub()); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + replace(console, 'log', () => stub()); const inspectGCSFile = proxyquire('../inspectGCSFile', { '@google-cloud/dlp': {DLP: DLP}, @@ -1514,7 +1502,7 @@ describe('inspect', () => { fileName, topicName, subscriptionName, - DLP.protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, + protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, 0, 'PERSON_NAME', undefined, @@ -1535,25 +1523,24 @@ describe('inspect', () => { datasetId, tableId, topicName, - DLP.protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, + protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, 0, infoTypes, undefined, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -1562,13 +1549,13 @@ describe('inspect', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - sinon.replace(console, 'log', () => sinon.stub()); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + replace(console, 'log', () => stub()); const inspectBigQuery = proxyquire('../inspectBigQuery', { '@google-cloud/dlp': {DLP: DLP}, @@ -1582,16 +1569,16 @@ describe('inspect', () => { tableId, topicName, subscriptionName, - DLP.protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, + protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, 0, 'PERSON_NAME', undefined ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateDlpJob, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should handle error while inspecting big query table', async () => { @@ -1603,25 +1590,24 @@ describe('inspect', () => { datasetId, tableId, topicName, - DLP.protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, + protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, 0, infoTypes, undefined, jobName ); - const mockCreateDlpJob = sinon.stub().rejects(new Error('Failed')); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().rejects(new Error('Failed')); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -1630,13 +1616,13 @@ describe('inspect', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - sinon.replace(console, 'log', () => sinon.stub()); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + replace(console, 'log', () => stub()); const inspectBigQuery = proxyquire('../inspectBigQuery', { '@google-cloud/dlp': {DLP: DLP}, @@ -1651,7 +1637,7 @@ describe('inspect', () => { tableId, topicName, subscriptionName, - DLP.protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, + protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, 0, 'PERSON_NAME', undefined @@ -1673,25 +1659,24 @@ describe('inspect', () => { nameSpaceId, kind, topicName, - DLP.protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, + protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, 0, infoTypes, undefined, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -1700,13 +1685,13 @@ describe('inspect', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - sinon.replace(console, 'log', () => sinon.stub()); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + replace(console, 'log', () => stub()); const inspectDatastore = proxyquire('../inspectDatastore', { '@google-cloud/dlp': {DLP: DLP}, @@ -1720,16 +1705,16 @@ describe('inspect', () => { kind, topicName, subscriptionName, - DLP.protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, + protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, 0, 'PERSON_NAME', undefined ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateDlpJob, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should handle error while inspecting datastore instance', async () => { @@ -1743,25 +1728,24 @@ describe('inspect', () => { nameSpaceId, kind, topicName, - DLP.protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, + protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, 0, infoTypes, undefined, jobName ); - const mockCreateDlpJob = sinon.stub().rejects(new Error('Failed')); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().rejects(new Error('Failed')); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -1770,13 +1754,13 @@ describe('inspect', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - sinon.replace(console, 'log', () => sinon.stub()); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + replace(console, 'log', () => stub()); const inspectDatastore = proxyquire('../inspectDatastore', { '@google-cloud/dlp': {DLP: DLP}, @@ -1791,7 +1775,7 @@ describe('inspect', () => { kind, topicName, subscriptionName, - DLP.protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, + protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, 0, 'PERSON_NAME', undefined @@ -1811,30 +1795,30 @@ describe('inspect', () => { tableId, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const inspectBigquerySendToScc = proxyquire('../inspectBigquerySendToScc', { '@google-cloud/dlp': {DLP: DLP}, }); await inspectBigquerySendToScc(projectId, dataProject, datasetId, tableId); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateDlpJob, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should handle error if inspect job results into failure', async () => { @@ -1846,27 +1830,27 @@ describe('inspect', () => { tableId, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_FAILED ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const inspectBigQuerySendToScc = proxyquire('../inspectBigquerySendToScc', { '@google-cloud/dlp': {DLP: DLP}, }); await inspectBigQuerySendToScc(projectId, dataProject, datasetId, tableId); - sinon.assert.calledOnce(mockGetDlpJob); - sinon.assert.calledWithMatch( + _assert.calledOnce(mockGetDlpJob); + _assert.calledWithMatch( mockConsoleLog, 'Job Failed, Please check the configuration.' ); diff --git a/dlp/system-test/jobs.test.js b/dlp/system-test/jobs.test.js index 8294904ca7..98711f28e8 100644 --- a/dlp/system-test/jobs.test.js +++ b/dlp/system-test/jobs.test.js @@ -14,12 +14,12 @@ 'use strict'; -const {assert} = require('chai'); -const {describe, it, before} = require('mocha'); -const cp = require('child_process'); -const DLP = require('@google-cloud/dlp'); +import { assert } from 'chai'; +import { describe, it, before } from 'mocha'; +import { execSync as _execSync } from 'child_process'; +import { DlpServiceClient } from '@google-cloud/dlp'; -const execSync = cmd => cp.execSync(cmd, {encoding: 'utf-8'}); +const execSync = cmd => _execSync(cmd, {encoding: 'utf-8'}); const badJobName = 'projects/not-a-project/dlpJobs/i-123456789'; @@ -29,7 +29,7 @@ const testTableId = 'bikeshare_trips'; const testColumnName = 'zip_code'; const bucketName = 'nodejs-dlp-test-bucket'; -const client = new DLP.DlpServiceClient(); +const client = new DlpServiceClient(); // createTestJob needs time to finish creating a DLP job, before listing // tests will succeed. @@ -88,7 +88,7 @@ describe('test', () => { }); async function deleteStaleJobs() { - const dlp = new DLP.DlpServiceClient(); + const dlp = new DlpServiceClient(); const request = { parent: `projects/${projectId}/locations/global`, filter: 'state=DONE', diff --git a/dlp/system-test/metadata.test.js b/dlp/system-test/metadata.test.js index 89c02323e9..360cee7688 100644 --- a/dlp/system-test/metadata.test.js +++ b/dlp/system-test/metadata.test.js @@ -14,16 +14,16 @@ 'use strict'; -const {assert} = require('chai'); -const {describe, it, before} = require('mocha'); -const cp = require('child_process'); -const uuid = require('uuid'); -const DLP = require('@google-cloud/dlp'); -const {Storage} = require('@google-cloud/storage'); -const proxyquire = require('proxyquire'); -const sinon = require('sinon'); +import { assert } from 'chai'; +import { describe, it, before } from 'mocha'; +import { execSync as _execSync } from 'child_process'; +import { v4 } from 'uuid'; +import DLP, { DlpServiceClient } from '@google-cloud/dlp'; +import { Storage } from '@google-cloud/storage'; +import proxyquire from 'proxyquire'; +import { restore, stub, replace, assert as _assert } from 'sinon'; -const {MOCK_DATA} = require('./mockdata'); +import { MOCK_DATA } from './mockdata'; const dataProject = 'bigquery-public-data'; const dataSetId = 'samples'; @@ -31,11 +31,11 @@ const tableId = 'github_nested'; const storage = new Storage(); const testFile = 'resources/test.txt'; -const bucketName = `test-dlp-metadata-bucket-${uuid.v4()}`; +const bucketName = `test-dlp-metadata-bucket-${v4()}`; -const execSync = cmd => cp.execSync(cmd, {encoding: 'utf-8'}); +const execSync = cmd => _execSync(cmd, {encoding: 'utf-8'}); -const client = new DLP.DlpServiceClient(); +const client = new DlpServiceClient(); describe('metadata', () => { let projectId, storedInfoTypeId; @@ -60,7 +60,7 @@ describe('metadata', () => { // Delete stored infotypes created in the snippets. afterEach(async () => { - sinon.restore(); + restore(); if (!storedInfoTypeId) { return; } @@ -103,17 +103,16 @@ describe('metadata', () => { fieldName, storedInfoTypeName ); - const mockCreateStoredInfoType = sinon - .stub() + const mockCreateStoredInfoType = stub() .resolves([{name: storedInfoTypeName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'createStoredInfoType', mockCreateStoredInfoType ); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const createStoredInfoType = proxyquire('../createStoredInfoType', { '@google-cloud/dlp': {DLP: DLP}, @@ -127,11 +126,11 @@ describe('metadata', () => { tableId, fieldName ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateStoredInfoType, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledWithExactly( + _assert.calledWithExactly( mockConsoleLog, `InfoType stored successfully: ${storedInfoTypeName}` ); @@ -141,15 +140,15 @@ describe('metadata', () => { const infoTypeId = 'MOCK_INFOTYPE_ID'; const outputPath = 'MOCK_OUTPUT_PATH'; const fieldName = 'MOCK_FIELD'; - const mockCreateStoredInfoType = sinon.stub().rejects(new Error('Failed')); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateStoredInfoType = stub().rejects(new Error('Failed')); + replace( + DlpServiceClient.prototype, 'createStoredInfoType', mockCreateStoredInfoType ); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const createStoredInfoType = proxyquire('../createStoredInfoType', { '@google-cloud/dlp': {DLP: DLP}, @@ -181,28 +180,27 @@ describe('metadata', () => { outputPath, fileSetUrl ); - const mockUpdateStoredInfoType = sinon - .stub() + const mockUpdateStoredInfoType = stub() .resolves([{name: storedInfoTypeName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + replace( + DlpServiceClient.prototype, 'updateStoredInfoType', mockUpdateStoredInfoType ); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const updateStoredInfoType = proxyquire('../updateStoredInfoType', { '@google-cloud/dlp': {DLP: DLP}, }); await updateStoredInfoType(projectId, infoTypeId, outputPath, fileSetUrl); - sinon.assert.calledWith( + _assert.calledWith( mockUpdateStoredInfoType, DATA_CONSTANTS.REQUEST_UPDATE_STORED_INFOTYPE ); - sinon.assert.calledWithMatch( + _assert.calledWithMatch( mockConsoleLog, 'InfoType updated successfully:' ); @@ -212,15 +210,15 @@ describe('metadata', () => { const infoTypeId = 'MOCK_INFOTYPE_ID'; const outputPath = 'MOCK_OUTPUT_PATH'; const fileSetUrl = 'MOCK_FILE_SET_URL'; - const mockUpdateStoredInfoType = sinon.stub().rejects(new Error('Failed')); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockUpdateStoredInfoType = stub().rejects(new Error('Failed')); + replace( + DlpServiceClient.prototype, 'updateStoredInfoType', mockUpdateStoredInfoType ); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const updateStoredInfoType = proxyquire('../updateStoredInfoType', { '@google-cloud/dlp': {DLP: DLP}, diff --git a/dlp/system-test/mockdata.js b/dlp/system-test/mockdata.js index 5f79ee5752..a9bdff3083 100644 --- a/dlp/system-test/mockdata.js +++ b/dlp/system-test/mockdata.js @@ -14,8 +14,8 @@ 'use strict'; -const DLP = require('@google-cloud/dlp'); -const sinon = require('sinon'); +import { protos } from '@google-cloud/dlp'; +import { stub } from 'sinon'; /** Mock data for unit test cases. @@ -46,7 +46,7 @@ const MOCK_DATA = { }, rowsLimit: 1000, sampleMethod: - DLP.protos.google.privacy.dlp.v2.BigQueryOptions.SampleMethod + protos.google.privacy.dlp.v2.BigQueryOptions.SampleMethod .RANDOM_START, includedFields: [{name: 'name'}], }, @@ -81,8 +81,8 @@ const MOCK_DATA = { attributes: { DlpJobName: jobName, }, - ack: sinon.stub(), - nack: sinon.stub(), + ack: stub(), + nack: stub(), }, }), DEIDENTIFY_TABLE_WITH_FPE: (projectId, alphabet, keyName, wrappedKey) => ({ @@ -155,7 +155,7 @@ const MOCK_DATA = { inspectJob: { inspectConfig: { infoTypes: infoTypes, - minLikelihood: DLP.protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, + minLikelihood: protos.google.privacy.dlp.v2.Likelihood.POSSIBLE, includeQuote: true, excludeInfoTypes: true, }, @@ -164,9 +164,9 @@ const MOCK_DATA = { fileSet: {url: gcsUri}, bytesLimitPerFile: 200, filesLimitPercent: 90, - fileTypes: [DLP.protos.google.privacy.dlp.v2.FileType.TEXT_FILE], + fileTypes: [protos.google.privacy.dlp.v2.FileType.TEXT_FILE], sampleMethod: - DLP.protos.google.privacy.dlp.v2.CloudStorageOptions.SampleMethod + protos.google.privacy.dlp.v2.CloudStorageOptions.SampleMethod .RANDOM_START, }, }, @@ -200,8 +200,8 @@ const MOCK_DATA = { attributes: { DlpJobName: jobName, }, - ack: sinon.stub(), - nack: sinon.stub(), + ack: stub(), + nack: stub(), }, }), DEIDENTIFY_WITH_DETEMINISTIC: ( @@ -375,7 +375,7 @@ const MOCK_DATA = { {name: 'LOCATION'}, {name: 'PHONE_NUMBER'}, ], - minLikelihood: DLP.protos.google.privacy.dlp.v2.Likelihood.UNLIKELY, + minLikelihood: protos.google.privacy.dlp.v2.Likelihood.UNLIKELY, limits: { maxFindingsPerItem: 100, }, @@ -435,7 +435,7 @@ const MOCK_DATA = { {name: 'LOCATION'}, {name: 'PHONE_NUMBER'}, ], - minLikelihood: DLP.protos.google.privacy.dlp.v2.Likelihood.UNLIKELY, + minLikelihood: protos.google.privacy.dlp.v2.Likelihood.UNLIKELY, limits: { maxFindingsPerItem: 100, }, @@ -499,7 +499,7 @@ const MOCK_DATA = { {name: 'LOCATION'}, {name: 'PHONE_NUMBER'}, ], - minLikelihood: DLP.protos.google.privacy.dlp.v2.Likelihood.UNLIKELY, + minLikelihood: protos.google.privacy.dlp.v2.Likelihood.UNLIKELY, limits: { maxFindingsPerItem: 100, }, @@ -868,8 +868,8 @@ const MOCK_DATA = { attributes: { DlpJobName: jobName, }, - ack: sinon.stub(), - nack: sinon.stub(), + ack: stub(), + nack: stub(), }, }), NUMERICAL_STATS: ( @@ -941,8 +941,8 @@ const MOCK_DATA = { attributes: { DlpJobName: jobName, }, - ack: sinon.stub(), - nack: sinon.stub(), + ack: stub(), + nack: stub(), }, }), K_MAP_ESTIMATION_ANALYSIS: ( @@ -1028,8 +1028,8 @@ const MOCK_DATA = { attributes: { DlpJobName: jobName, }, - ack: sinon.stub(), - nack: sinon.stub(), + ack: stub(), + nack: stub(), }, }), L_DIVERSITY_ANALYSIS: ( @@ -1110,8 +1110,8 @@ const MOCK_DATA = { attributes: { DlpJobName: jobName, }, - ack: sinon.stub(), - nack: sinon.stub(), + ack: stub(), + nack: stub(), }, }), CATEGORICAL_STATS: ( @@ -1193,8 +1193,8 @@ const MOCK_DATA = { attributes: { DlpJobName: jobName, }, - ack: sinon.stub(), - nack: sinon.stub(), + ack: stub(), + nack: stub(), }, }), CREATE_STORED_INFOTYPE: ( @@ -1305,8 +1305,8 @@ const MOCK_DATA = { attributes: { DlpJobName: jobName, }, - ack: sinon.stub(), - nack: sinon.stub(), + ack: stub(), + nack: stub(), }, }), INSPECT_BIG_QUERY: ( @@ -1371,8 +1371,8 @@ const MOCK_DATA = { attributes: { DlpJobName: jobName, }, - ack: sinon.stub(), - nack: sinon.stub(), + ack: stub(), + nack: stub(), }, }), INSPECT_DATASTORE: ( @@ -1439,10 +1439,10 @@ const MOCK_DATA = { attributes: { DlpJobName: jobName, }, - ack: sinon.stub(), - nack: sinon.stub(), + ack: stub(), + nack: stub(), }, }), }; -module.exports = {MOCK_DATA}; +export default {MOCK_DATA}; diff --git a/dlp/system-test/quickstart.test.js b/dlp/system-test/quickstart.test.js index 2e000674b7..2a6bff652e 100644 --- a/dlp/system-test/quickstart.test.js +++ b/dlp/system-test/quickstart.test.js @@ -14,14 +14,14 @@ 'use strict'; -const {assert} = require('chai'); -const {describe, it, before} = require('mocha'); -const cp = require('child_process'); -const DLP = require('@google-cloud/dlp'); +import { assert } from 'chai'; +import { describe, it, before } from 'mocha'; +import { execSync as _execSync } from 'child_process'; +import { DlpServiceClient } from '@google-cloud/dlp'; -const execSync = cmd => cp.execSync(cmd, {encoding: 'utf-8'}); +const execSync = cmd => _execSync(cmd, {encoding: 'utf-8'}); -const client = new DLP.DlpServiceClient(); +const client = new DlpServiceClient(); describe('quickstart', () => { let projectId; diff --git a/dlp/system-test/redact.test.js b/dlp/system-test/redact.test.js index 2dee0e4028..0c9974c48b 100644 --- a/dlp/system-test/redact.test.js +++ b/dlp/system-test/redact.test.js @@ -14,24 +14,24 @@ 'use strict'; -const {assert} = require('chai'); -const {describe, it, before} = require('mocha'); -const fs = require('fs'); -const cp = require('child_process'); -const {PNG} = require('pngjs'); -const pixelmatch = require('pixelmatch'); -const DLP = require('@google-cloud/dlp'); +import { assert } from 'chai'; +import { describe, it, before } from 'mocha'; +import { createReadStream } from 'fs'; +import { execSync as _execSync } from 'child_process'; +import { PNG } from 'pngjs'; +import pixelmatch from 'pixelmatch'; +import { DlpServiceClient } from '@google-cloud/dlp'; -const execSync = cmd => cp.execSync(cmd, {encoding: 'utf-8'}); +const execSync = cmd => _execSync(cmd, {encoding: 'utf-8'}); const testImage = 'resources/test.png'; const testResourcePath = 'system-test/resources'; -const client = new DLP.DlpServiceClient(); +const client = new DlpServiceClient(); async function readImage(filePath) { return new Promise((resolve, reject) => { - fs.createReadStream(filePath) + createReadStream(filePath) .pipe(new PNG()) .on('error', reject) .on('parsed', function () { diff --git a/dlp/system-test/risk.test.js b/dlp/system-test/risk.test.js index b3ed576131..0cc0869891 100644 --- a/dlp/system-test/risk.test.js +++ b/dlp/system-test/risk.test.js @@ -14,18 +14,18 @@ 'use strict'; -const {assert} = require('chai'); -const {describe, it, before, after, afterEach} = require('mocha'); -const uuid = require('uuid'); -const {PubSub} = require('@google-cloud/pubsub'); -const DLP = require('@google-cloud/dlp'); -const proxyquire = require('proxyquire'); -const sinon = require('sinon'); +import { assert } from 'chai'; +import { describe, it, before, after, afterEach } from 'mocha'; +import { v4 } from 'uuid'; +import { PubSub } from '@google-cloud/pubsub'; +import DLP, { DlpServiceClient } from '@google-cloud/dlp'; +import proxyquire from 'proxyquire'; +import { restore, stub, replace, fake, assert as _assert } from 'sinon'; -const {MOCK_DATA} = require('./mockdata'); +import { MOCK_DATA } from './mockdata'; const pubsub = new PubSub(); -const client = new DLP.DlpServiceClient(); +const client = new DlpServiceClient(); // Dummy resource names used in test cases mocking API Calls. const datasetId = 'MOCK_DATASET_ID'; @@ -47,8 +47,8 @@ describe('risk', () => { let topic, subscription, topicName, subscriptionName, jobName; before(async () => { - topicName = `dlp-risk-topic-${uuid.v4()}-${Date.now()}`; - subscriptionName = `dlp-risk-subscription-${uuid.v4()}-${Date.now()}`; + topicName = `dlp-risk-topic-${v4()}-${Date.now()}`; + subscriptionName = `dlp-risk-subscription-${v4()}-${Date.now()}`; projectId = await client.getProjectId(); [topic] = await pubsub.createTopic(topicName); [subscription] = await topic.createSubscription(subscriptionName); @@ -84,7 +84,7 @@ describe('risk', () => { // Delete risk analysis job created in the snippets. afterEach(async () => { - sinon.restore(); + restore(); const request = { name: jobName, }; @@ -115,20 +115,19 @@ describe('risk', () => { quasiIds, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -137,14 +136,14 @@ describe('risk', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const kAnonymityAnalysis = proxyquire('../kAnonymityAnalysis', { '@google-cloud/dlp': {DLP: DLP}, @@ -159,11 +158,11 @@ describe('risk', () => { subscriptionName, 'AGE,MYSTERY' ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateDlpJob, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should handle k-anonymity analysis errors', async () => { @@ -181,20 +180,19 @@ describe('risk', () => { quasiIds, jobName ); - const mockCreateDlpJob = sinon.stub().rejects(new Error('Failed')); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().rejects(new Error('Failed')); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -203,14 +201,14 @@ describe('risk', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const kAnonymityAnalysis = proxyquire('../kAnonymityAnalysis', { '@google-cloud/dlp': {DLP: DLP}, @@ -244,20 +242,19 @@ describe('risk', () => { topicName, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -266,14 +263,14 @@ describe('risk', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const numericalRiskAnalysis = proxyquire('../numericalRiskAnalysis', { '@google-cloud/dlp': {DLP: DLP}, @@ -288,11 +285,11 @@ describe('risk', () => { topicName, subscriptionName ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateDlpJob, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should handle numerical risk analysis errors', async () => { @@ -307,20 +304,19 @@ describe('risk', () => { topicName, jobName ); - const mockCreateDlpJob = sinon.stub().rejects(new Error('Failed')); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().rejects(new Error('Failed')); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -329,14 +325,14 @@ describe('risk', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const numericalRiskAnalysis = proxyquire('../numericalRiskAnalysis', { '@google-cloud/dlp': {DLP: DLP}, @@ -372,20 +368,19 @@ describe('risk', () => { quasiIds, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -394,14 +389,14 @@ describe('risk', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const kMapEstimationAnalysis = proxyquire('../kMapEstimationAnalysis', { '@google-cloud/dlp': {DLP: DLP}, @@ -418,11 +413,11 @@ describe('risk', () => { quasiIds[0].field.name, quasiIds[0].infoType.name ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateDlpJob, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should handle k-map analysis errors', async () => { @@ -439,20 +434,19 @@ describe('risk', () => { quasiIds, jobName ); - const mockCreateDlpJob = sinon.stub().rejects(new Error('Failed')); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().rejects(new Error('Failed')); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -461,14 +455,14 @@ describe('risk', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const kMapEstimationAnalysis = proxyquire('../kMapEstimationAnalysis', { '@google-cloud/dlp': {DLP: DLP}, @@ -509,20 +503,19 @@ describe('risk', () => { quasiIds, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -531,14 +524,14 @@ describe('risk', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const lDiversityAnalysis = proxyquire('../lDiversityAnalysis', { '@google-cloud/dlp': {DLP: DLP}, @@ -554,11 +547,11 @@ describe('risk', () => { sensitiveAttribute, 'AGE,MYSTERY' ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateDlpJob, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should handle l-diversity analysis errors', async () => { @@ -578,20 +571,19 @@ describe('risk', () => { quasiIds, jobName ); - const mockCreateDlpJob = sinon.stub().rejects(new Error('Failed')); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().rejects(new Error('Failed')); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -600,14 +592,14 @@ describe('risk', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const lDiversityAnalysis = proxyquire('../lDiversityAnalysis', { '@google-cloud/dlp': {DLP: DLP}, @@ -642,20 +634,19 @@ describe('risk', () => { topicName, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -664,14 +655,14 @@ describe('risk', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const categoricalRiskAnalysis = proxyquire( '../categoricalRiskAnalysis.js', @@ -689,11 +680,11 @@ describe('risk', () => { topicName, subscriptionName ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateDlpJob, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should handle error if categorical risk analysis job fails', async () => { @@ -708,20 +699,19 @@ describe('risk', () => { topicName, jobName ); - const mockCreateDlpJob = sinon.stub().rejects(new Error('Failed')); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().rejects(new Error('Failed')); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const topicHandlerStub = sinon.stub().returns({ - get: sinon.stub().resolves([ + const topicHandlerStub = stub().returns({ + get: stub().resolves([ { - subscription: sinon.stub().resolves({ - removeListener: sinon.stub(), - on: sinon - .stub() + subscription: stub().resolves({ + removeListener: stub(), + on: stub() .withArgs('message') .callsFake((eventName, handler) => { handler(DATA_CONSTANTS.MOCK_MESSAGE); @@ -730,14 +720,14 @@ describe('risk', () => { }, ]), }); - sinon.replace(PubSub.prototype, 'topic', topicHandlerStub); + replace(PubSub.prototype, 'topic', topicHandlerStub); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const categoricalRiskAnalysis = proxyquire('../categoricalRiskAnalysis', { '@google-cloud/dlp': {DLP: DLP}, @@ -768,19 +758,19 @@ describe('risk', () => { outputTableId, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_SUCCESS ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const kAnonymityWithEntityIds = proxyquire('../kAnonymityWithEntityIds', { '@google-cloud/dlp': {DLP: DLP}, @@ -791,11 +781,11 @@ describe('risk', () => { sourceTableId, outputTableId ); - sinon.assert.calledOnceWithExactly( + _assert.calledOnceWithExactly( mockCreateDlpJob, DATA_CONSTANTS.REQUEST_CREATE_DLP_JOB ); - sinon.assert.calledOnce(mockGetDlpJob); + _assert.calledOnce(mockGetDlpJob); }); it('should handle error if risk job fails', async () => { @@ -807,19 +797,19 @@ describe('risk', () => { outputTableId, jobName ); - const mockCreateDlpJob = sinon.stub().resolves([{name: jobName}]); - sinon.replace( - DLP.DlpServiceClient.prototype, + const mockCreateDlpJob = stub().resolves([{name: jobName}]); + replace( + DlpServiceClient.prototype, 'createDlpJob', mockCreateDlpJob ); - const mockGetDlpJob = sinon.fake.resolves( + const mockGetDlpJob = fake.resolves( DATA_CONSTANTS.RESPONSE_GET_DLP_JOB_FAILED ); - sinon.replace(DLP.DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); - const mockConsoleLog = sinon.stub(); - sinon.replace(console, 'log', mockConsoleLog); + replace(DlpServiceClient.prototype, 'getDlpJob', mockGetDlpJob); + const mockConsoleLog = stub(); + replace(console, 'log', mockConsoleLog); const kAnonymityWithEntityIds = proxyquire('../kAnonymityWithEntityIds', { '@google-cloud/dlp': {DLP: DLP}, @@ -830,8 +820,8 @@ describe('risk', () => { sourceTableId, outputTableId ); - sinon.assert.calledOnce(mockGetDlpJob); - sinon.assert.calledWithMatch( + _assert.calledOnce(mockGetDlpJob); + _assert.calledWithMatch( mockConsoleLog, 'Job Failed, Please check the configuration.' ); diff --git a/dlp/system-test/templates.test.js b/dlp/system-test/templates.test.js index 16b330d9d6..b7497a58fe 100644 --- a/dlp/system-test/templates.test.js +++ b/dlp/system-test/templates.test.js @@ -14,16 +14,16 @@ 'use strict'; -const {assert} = require('chai'); -const {describe, it, before} = require('mocha'); -const cp = require('child_process'); -const uuid = require('uuid'); -const DLP = require('@google-cloud/dlp'); +import { assert } from 'chai'; +import { describe, it, before } from 'mocha'; +import { execSync as _execSync } from 'child_process'; +import { v4 } from 'uuid'; +import { DlpServiceClient } from '@google-cloud/dlp'; -const execSync = cmd => cp.execSync(cmd, {encoding: 'utf-8'}); +const execSync = cmd => _execSync(cmd, {encoding: 'utf-8'}); const templateName = ''; -const client = new DLP.DlpServiceClient(); +const client = new DlpServiceClient(); describe('templates', () => { let projectId; @@ -32,8 +32,8 @@ describe('templates', () => { const MIN_LIKELIHOOD = 'VERY_LIKELY'; const MAX_FINDINGS = 5; const INCLUDE_QUOTE = false; - const DISPLAY_NAME = `My Template ${uuid.v4()}`; - const TEMPLATE_NAME = `my-template-${uuid.v4()}`; + const DISPLAY_NAME = `My Template ${v4()}`; + const TEMPLATE_NAME = `my-template-${v4()}`; before(async () => { projectId = await client.getProjectId(); diff --git a/dlp/system-test/triggers.test.js b/dlp/system-test/triggers.test.js index 3092aa47de..1f6031828e 100644 --- a/dlp/system-test/triggers.test.js +++ b/dlp/system-test/triggers.test.js @@ -14,22 +14,22 @@ 'use strict'; -const {assert} = require('chai'); -const {describe, it, before} = require('mocha'); -const cp = require('child_process'); -const uuid = require('uuid'); -const DLP = require('@google-cloud/dlp'); +import { assert } from 'chai'; +import { describe, it, before } from 'mocha'; +import { execSync as _execSync } from 'child_process'; +import { v4 } from 'uuid'; +import { DlpServiceClient } from '@google-cloud/dlp'; -const execSync = cmd => cp.execSync(cmd, {encoding: 'utf-8'}); +const execSync = cmd => _execSync(cmd, {encoding: 'utf-8'}); -const client = new DLP.DlpServiceClient(); +const client = new DlpServiceClient(); describe('triggers', () => { let projectId; let fullTriggerName; - const triggerName = `my-trigger-${uuid.v4()}`; - const triggerDisplayName = `My Trigger Display Name: ${uuid.v4()}`; - const triggerDescription = `My Trigger Description: ${uuid.v4()}`; + const triggerName = `my-trigger-${v4()}`; + const triggerDisplayName = `My Trigger Display Name: ${v4()}`; + const triggerDescription = `My Trigger Description: ${v4()}`; const infoType = 'PERSON_NAME'; const minLikelihood = 'VERY_LIKELY'; const maxFindings = 5; @@ -37,7 +37,7 @@ describe('triggers', () => { let tempTriggerName = ''; async function createTempTrigger() { - const triggerId = `trigger-test-${uuid.v4()}`; + const triggerId = `trigger-test-${v4()}`; await client.createJobTrigger({ parent: `projects/${projectId}/locations/global`, jobTrigger: {