diff --git a/handwritten/spanner/src/batch-transaction.ts b/handwritten/spanner/src/batch-transaction.ts index 4f88d9a6594..1ea2557d0ef 100644 --- a/handwritten/spanner/src/batch-transaction.ts +++ b/handwritten/spanner/src/batch-transaction.ts @@ -16,7 +16,6 @@ import {PreciseDate} from '@google-cloud/precise-date'; import {promisifyAll} from '@google-cloud/promisify'; -import * as extend from 'extend'; import { ExecuteSqlRequest, ReadCallback, @@ -233,11 +232,11 @@ class BatchTransaction extends Snapshot { 'BatchTransaction.createPartitions_', traceConfig, span => { - const query = extend({}, config.reqOpts, { + const query = Object.assign({}, config.reqOpts, { session: this.session.formattedName_, transaction: {id: this.id}, }); - config.reqOpts = extend({}, query); + config.reqOpts = Object.assign({}, query); const headers = { [CLOUD_RESOURCE_HEADER]: (this.session.parent as Database) .formattedName_, @@ -253,7 +252,7 @@ class BatchTransaction extends Snapshot { } const partitions = resp.partitions.map(partition => { - return extend({}, query, partition); + return Object.assign({}, query, partition); }); if (resp.transaction) { diff --git a/handwritten/spanner/src/database.ts b/handwritten/spanner/src/database.ts index 38ddef26d14..113361ecc0e 100644 --- a/handwritten/spanner/src/database.ts +++ b/handwritten/spanner/src/database.ts @@ -596,7 +596,7 @@ class Database extends common.GrpcServiceObject { typeof optionsOrCallback === 'function' ? optionsOrCallback : cb!; const reqOpts = { - database: extend( + database: Object.assign( { name: this.formattedName_, }, @@ -1027,7 +1027,7 @@ class Database extends common.GrpcServiceObject { typeof optionsOrCallback === 'function' ? optionsOrCallback : cb!; const options = typeof optionsOrCallback === 'object' && optionsOrCallback - ? extend({}, optionsOrCallback) + ? Object.assign({}, optionsOrCallback) : ({} as CreateSessionOptions); const reqOpts: google.spanner.v1.ICreateSessionRequest = { @@ -1951,7 +1951,7 @@ class Database extends common.GrpcServiceObject { ? optionsOrCallback : ({} as GetSessionsOptions); const gaxOpts = extend(true, {}, options.gaxOptions); - let reqOpts = extend({}, options, { + const reqOpts = Object.assign({}, options, { database: this.formattedName_, }); delete reqOpts.gaxOptions; @@ -1959,16 +1959,15 @@ class Database extends common.GrpcServiceObject { // Copy over pageSize and pageToken values from gaxOptions. // However values set on options take precedence. if (gaxOpts) { - reqOpts = extend( - {}, - { - pageSize: (gaxOpts as GetSessionsOptions).pageSize, - pageToken: (gaxOpts as GetSessionsOptions).pageToken, - }, - reqOpts, - ); - delete (gaxOpts as GetSessionsOptions).pageSize; - delete (gaxOpts as GetSessionsOptions).pageToken; + const gax = gaxOpts as GetSessionsOptions; + if (gax.pageSize !== undefined) { + reqOpts.pageSize ??= gax.pageSize; + delete gax.pageSize; + } + if (gax.pageToken !== undefined) { + reqOpts.pageToken ??= gax.pageToken; + delete gax.pageToken; + } } const headers = this._metadataWithRequestId( @@ -2004,7 +2003,7 @@ class Database extends common.GrpcServiceObject { } span.end(); const nextQuery = nextPageRequest! - ? extend({}, options, nextPageRequest!) + ? Object.assign({}, options, nextPageRequest!) : null; callback!(err, sessionInstances!, nextQuery, ...args); }, @@ -2055,7 +2054,7 @@ class Database extends common.GrpcServiceObject { getSessionsStream(options: GetSessionsOptions = {}): NodeJS.ReadableStream { const gaxOpts = extend(true, {}, options.gaxOptions); - let reqOpts = extend({}, options, { + const reqOpts = Object.assign({}, options, { database: this.formattedName_, }); delete reqOpts.gaxOptions; @@ -2063,16 +2062,15 @@ class Database extends common.GrpcServiceObject { // Copy over pageSize and pageToken values from gaxOptions. // However values set on options take precedence. if (gaxOpts) { - reqOpts = extend( - {}, - { - pageSize: (gaxOpts as GetSessionsOptions).pageSize, - pageToken: (gaxOpts as GetSessionsOptions).pageToken, - }, - reqOpts, - ); - delete (gaxOpts as GetSessionsOptions).pageSize; - delete (gaxOpts as GetSessionsOptions).pageToken; + const gax = gaxOpts as GetSessionsOptions; + if (gax.pageSize !== undefined) { + reqOpts.pageSize ??= gax.pageSize; + delete gax.pageSize; + } + if (gax.pageToken !== undefined) { + reqOpts.pageToken ??= gax.pageToken; + delete gax.pageToken; + } } return this.requestStream({ @@ -2476,23 +2474,22 @@ class Database extends common.GrpcServiceObject { typeof optionsOrCallback === 'object' ? optionsOrCallback : {}; const callback = typeof optionsOrCallback === 'function' ? optionsOrCallback : cb!; - let reqOpts = { + const reqOpts = { parent: this.formattedName_, }; // Copy over pageSize and pageToken values from gaxOptions. // However, values set on options take precedence. if (gaxOpts) { - reqOpts = extend( - {}, - { - pageSize: (gaxOpts as GetDatabaseRolesOptions).pageSize, - pageToken: (gaxOpts as GetDatabaseRolesOptions).pageToken, - }, - reqOpts, - ); - delete (gaxOpts as GetDatabaseRolesOptions).pageSize; - delete (gaxOpts as GetDatabaseRolesOptions).pageToken; + const gax = gaxOpts as GetDatabaseRolesOptions; + if (gax.pageSize !== undefined) { + (reqOpts as any).pageSize ??= gax.pageSize; + delete gax.pageSize; + } + if (gax.pageToken !== undefined) { + (reqOpts as any).pageToken ??= gax.pageToken; + delete gax.pageToken; + } } this.request< @@ -2508,7 +2505,7 @@ class Database extends common.GrpcServiceObject { }, (err, roles, nextPageRequest, ...args) => { const nextQuery = nextPageRequest! - ? extend({}, gaxOpts, nextPageRequest!) + ? Object.assign({}, gaxOpts, nextPageRequest!) : null; callback!(err, roles, nextQuery, ...args); @@ -4051,7 +4048,7 @@ class Database extends common.GrpcServiceObject { }; } const reqOpts: databaseAdmin.spanner.admin.database.v1.IUpdateDatabaseDdlRequest = - extend( + Object.assign( { database: this.formattedName_, }, diff --git a/handwritten/spanner/src/index.ts b/handwritten/spanner/src/index.ts index 4c59d917ac2..06e23cf385a 100644 --- a/handwritten/spanner/src/index.ts +++ b/handwritten/spanner/src/index.ts @@ -739,7 +739,7 @@ class Spanner extends GrpcService { const reqOpts = { parent: this.projectFormattedName_, instanceId: formattedName.split('/').pop(), - instance: extend( + instance: Object.assign( { name: formattedName, displayName, @@ -892,7 +892,7 @@ class Spanner extends GrpcService { const gaxOpts = extend(true, {}, options.gaxOptions); - let reqOpts = extend({}, options, { + const reqOpts = Object.assign({}, options, { parent: 'projects/' + this.projectId, }); @@ -901,16 +901,15 @@ class Spanner extends GrpcService { // Copy over pageSize and pageToken values from gaxOptions. // However values set on options take precedence. if (gaxOpts) { - reqOpts = extend( - {}, - { - pageSize: (gaxOpts as GetInstancesOptions).pageSize, - pageToken: (gaxOpts as GetInstancesOptions).pageToken, - }, - reqOpts, - ); - delete (gaxOpts as GetInstancesOptions).pageToken; - delete (gaxOpts as GetInstancesOptions).pageSize; + const gax = gaxOpts as GetInstancesOptions; + if (gax.pageSize !== undefined) { + reqOpts.pageSize ??= gax.pageSize; + delete gax.pageSize; + } + if (gax.pageToken !== undefined) { + reqOpts.pageToken ??= gax.pageToken; + delete gax.pageToken; + } } this.request( @@ -931,7 +930,7 @@ class Spanner extends GrpcService { }); } const nextQuery = nextPageRequest! - ? extend({}, options, nextPageRequest!) + ? Object.assign({}, options, nextPageRequest!) : null; callback!(err, instanceInstances, nextQuery, ...args); }, @@ -977,8 +976,7 @@ class Spanner extends GrpcService { */ getInstancesStream(options: GetInstancesOptions = {}): NodeJS.ReadableStream { const gaxOpts = extend(true, {}, options.gaxOptions); - - let reqOpts = extend({}, options, { + const reqOpts = Object.assign({}, options, { parent: 'projects/' + this.projectId, }); delete reqOpts.gaxOptions; @@ -986,16 +984,15 @@ class Spanner extends GrpcService { // Copy over pageSize and pageToken values from gaxOptions. // However values set on options take precedence. if (gaxOpts) { - reqOpts = extend( - {}, - { - pageSize: (gaxOpts as GetInstancesOptions).pageSize, - pageToken: (gaxOpts as GetInstancesOptions).pageToken, - }, - reqOpts, - ); - delete (gaxOpts as GetInstancesOptions).pageSize; - delete (gaxOpts as GetInstancesOptions).pageToken; + const gax = gaxOpts as GetInstancesOptions; + if (gax.pageSize !== undefined) { + reqOpts.pageSize ??= gax.pageSize; + delete gax.pageSize; + } + if (gax.pageToken !== undefined) { + reqOpts.pageToken ??= gax.pageToken; + delete gax.pageToken; + } } return this.requestStream({ @@ -1141,7 +1138,7 @@ class Spanner extends GrpcService { const reqOpts = { parent: this.projectFormattedName_, instanceConfigId: formattedName.split('/').pop(), - instanceConfig: extend( + instanceConfig: Object.assign( { name: formattedName, displayName, @@ -1286,7 +1283,7 @@ class Spanner extends GrpcService { : ({} as GetInstanceConfigsOptions); const gaxOpts = extend(true, {}, options.gaxOptions); - let reqOpts = extend({}, options, { + const reqOpts = Object.assign({}, options, { parent: 'projects/' + this.projectId, }); delete reqOpts.gaxOptions; @@ -1294,16 +1291,15 @@ class Spanner extends GrpcService { // Copy over pageSize and pageToken values from gaxOptions. // However values set on options take precedence. if (gaxOpts) { - reqOpts = extend( - {}, - { - pageSize: (gaxOpts as GetInstanceConfigsOptions).pageSize, - pageToken: (gaxOpts as GetInstanceConfigsOptions).pageToken, - }, - reqOpts, - ); - delete (gaxOpts as GetInstanceConfigsOptions).pageSize; - delete (gaxOpts as GetInstanceConfigsOptions).pageToken; + const gax = gaxOpts as GetInstanceConfigsOptions; + if (gax.pageSize !== undefined) { + reqOpts.pageSize ??= gax.pageSize; + delete gax.pageSize; + } + if (gax.pageToken !== undefined) { + reqOpts.pageToken ??= gax.pageToken; + delete gax.pageToken; + } } return this.request( @@ -1316,7 +1312,7 @@ class Spanner extends GrpcService { }, (err, instanceConfigs, nextPageRequest, ...args) => { const nextQuery = nextPageRequest! - ? extend({}, options, nextPageRequest!) + ? Object.assign({}, options, nextPageRequest!) : null; callback!(err, instanceConfigs, nextQuery, ...args); }, @@ -1363,23 +1359,22 @@ class Spanner extends GrpcService { ): NodeJS.ReadableStream { const gaxOpts = extend(true, {}, options.gaxOptions); - let reqOpts = extend({}, options, { + const reqOpts = Object.assign({}, options, { parent: 'projects/' + this.projectId, }); // Copy over pageSize and pageToken values from gaxOptions. // However values set on options take precedence. if (gaxOpts) { - reqOpts = extend( - {}, - { - pageSize: (gaxOpts as GetInstancesOptions).pageSize, - pageToken: (gaxOpts as GetInstancesOptions).pageToken, - }, - reqOpts, - ); - delete (gaxOpts as GetInstancesOptions).pageSize; - delete (gaxOpts as GetInstancesOptions).pageToken; + const gax = gaxOpts as GetInstancesOptions; + if (gax.pageSize !== undefined) { + reqOpts.pageSize ??= gax.pageSize; + delete gax.pageSize; + } + if (gax.pageToken !== undefined) { + reqOpts.pageToken ??= gax.pageToken; + delete gax.pageToken; + } } delete reqOpts.gaxOptions; @@ -1469,13 +1464,13 @@ class Spanner extends GrpcService { ? optionsOrCallback : ({} as GetInstanceConfigOptions); - const reqOpts = extend( + const reqOpts = Object.assign( {}, { name: 'projects/' + this.projectId + '/instanceConfigs/' + name, }, ); - const gaxOpts = extend({}, options.gaxOptions); + const gaxOpts = Object.assign({}, options.gaxOptions); return this.request( { @@ -1577,7 +1572,7 @@ class Spanner extends GrpcService { ? optionsOrCallback : ({} as GetInstanceConfigOperationsOptions); const gaxOpts = extend(true, {}, options.gaxOptions); - let reqOpts = extend({}, options, { + const reqOpts = Object.assign({}, options, { parent: this.projectFormattedName_, }); delete reqOpts.gaxOptions; @@ -1585,16 +1580,15 @@ class Spanner extends GrpcService { // Copy over pageSize and pageToken values from gaxOptions. // However, values set on options take precedence. if (gaxOpts) { - reqOpts = extend( - {}, - { - pageSize: (gaxOpts as GetInstanceConfigOperationsOptions).pageSize, - pageToken: (gaxOpts as GetInstanceConfigOperationsOptions).pageToken, - }, - reqOpts, - ); - delete (gaxOpts as GetInstanceConfigOperationsOptions).pageSize; - delete (gaxOpts as GetInstanceConfigOperationsOptions).pageToken; + const gax = gaxOpts as GetInstanceConfigOperationsOptions; + if (gax.pageSize !== undefined) { + reqOpts.pageSize ??= gax.pageSize; + delete gax.pageSize; + } + if (gax.pageToken !== undefined) { + reqOpts.pageToken ??= gax.pageToken; + delete gax.pageToken; + } } this.request( @@ -1607,7 +1601,7 @@ class Spanner extends GrpcService { }, (err, operations, nextPageRequest, ...args) => { const nextQuery = nextPageRequest! - ? extend({}, options, nextPageRequest!) + ? Object.assign({}, options, nextPageRequest!) : null; callback!(err, operations, nextQuery, ...args); diff --git a/handwritten/spanner/src/instance-config.ts b/handwritten/spanner/src/instance-config.ts index 626edee9d7e..5566c23590f 100644 --- a/handwritten/spanner/src/instance-config.ts +++ b/handwritten/spanner/src/instance-config.ts @@ -36,7 +36,6 @@ import { } from './index'; import {promisifyAll} from '@google-cloud/promisify'; import {CallOptions, grpc} from 'google-gax'; -import extend = require('extend'); export type IOperation = instanceAdmin.longrunning.IOperation; @@ -316,7 +315,7 @@ class InstanceConfig extends common.GrpcServiceObject { callback?: SetInstanceConfigMetadataCallback, ): void | Promise { const reqOpts = { - instanceConfig: extend( + instanceConfig: Object.assign( { name: this.formattedName_, }, diff --git a/handwritten/spanner/src/instance.ts b/handwritten/spanner/src/instance.ts index 2315d781663..b42103110fd 100644 --- a/handwritten/spanner/src/instance.ts +++ b/handwritten/spanner/src/instance.ts @@ -404,7 +404,7 @@ class Instance extends common.GrpcServiceObject { ? optionsOrCallback : ({} as GetBackupsOptions); const gaxOpts = extend(true, {}, options.gaxOptions); - let reqOpts = extend({}, options, { + const reqOpts = Object.assign({}, options, { parent: this.formattedName_, }); delete reqOpts.gaxOptions; @@ -412,16 +412,15 @@ class Instance extends common.GrpcServiceObject { // Copy over pageSize and pageToken values from gaxOptions. // However values set on options take precedence. if (gaxOpts) { - reqOpts = extend( - {}, - { - pageSize: (gaxOpts as GetBackupsOptions).pageSize, - pageToken: (gaxOpts as GetBackupsOptions).pageToken, - }, - reqOpts, - ); - delete (gaxOpts as GetBackupsOptions).pageSize; - delete (gaxOpts as GetBackupsOptions).pageToken; + const gax = gaxOpts as GetBackupsOptions; + if (gax.pageSize !== undefined) { + reqOpts.pageSize ??= gax.pageSize; + delete gax.pageSize; + } + if (gax.pageToken !== undefined) { + reqOpts.pageToken ??= gax.pageToken; + delete gax.pageToken; + } } this.request< @@ -445,7 +444,7 @@ class Instance extends common.GrpcServiceObject { }); } const nextQuery = nextPageRequest! - ? extend({}, options, nextPageRequest!) + ? Object.assign({}, options, nextPageRequest!) : null; callback(err, backupInstances, nextQuery, ...args); @@ -495,7 +494,7 @@ class Instance extends common.GrpcServiceObject { getBackupsStream(options: GetBackupsOptions = {}): NodeJS.ReadableStream { const gaxOpts = extend(true, {}, options.gaxOptions); - let reqOpts = extend({}, options, { + const reqOpts = Object.assign({}, options, { parent: this.formattedName_, }); delete reqOpts.gaxOptions; @@ -503,16 +502,15 @@ class Instance extends common.GrpcServiceObject { // Copy over pageSize and pageToken values from gaxOptions. // However values set on options take precedence. if (gaxOpts) { - reqOpts = extend( - {}, - { - pageSize: (gaxOpts as GetBackupsOptions).pageSize, - pageToken: (gaxOpts as GetBackupsOptions).pageToken, - }, - reqOpts, - ); - delete (gaxOpts as GetBackupsOptions).pageSize; - delete (gaxOpts as GetBackupsOptions).pageToken; + const gax = gaxOpts as GetBackupsOptions; + if (gax.pageSize !== undefined) { + reqOpts.pageSize ??= gax.pageSize; + delete gax.pageSize; + } + if (gax.pageToken !== undefined) { + reqOpts.pageToken ??= gax.pageToken; + delete gax.pageToken; + } } return this.requestStream({ @@ -610,7 +608,7 @@ class Instance extends common.GrpcServiceObject { ? optionsOrCallback : ({} as GetBackupOperationsOptions); const gaxOpts = extend(true, {}, options.gaxOptions); - let reqOpts = extend({}, options, { + const reqOpts = Object.assign({}, options, { parent: this.formattedName_, }); delete reqOpts.gaxOptions; @@ -618,16 +616,15 @@ class Instance extends common.GrpcServiceObject { // Copy over pageSize and pageToken values from gaxOptions. // However values set on options take precedence. if (gaxOpts) { - reqOpts = extend( - {}, - { - pageSize: (gaxOpts as GetBackupsOptions).pageSize, - pageToken: (gaxOpts as GetBackupsOptions).pageToken, - }, - reqOpts, - ); - delete (gaxOpts as GetBackupsOptions).pageSize; - delete (gaxOpts as GetBackupsOptions).pageToken; + const gax = gaxOpts as GetBackupsOptions; + if (gax.pageSize !== undefined) { + reqOpts.pageSize ??= gax.pageSize; + delete gax.pageSize; + } + if (gax.pageToken !== undefined) { + reqOpts.pageToken ??= gax.pageToken; + delete gax.pageToken; + } } this.request< @@ -643,7 +640,7 @@ class Instance extends common.GrpcServiceObject { }, (err, operations, nextPageRequest, ...args) => { const nextQuery = nextPageRequest! - ? extend({}, options, nextPageRequest!) + ? Object.assign({}, options, nextPageRequest!) : null; callback!(err, operations, nextQuery, ...args); @@ -738,7 +735,7 @@ class Instance extends common.GrpcServiceObject { ? optionsOrCallback : ({} as GetDatabaseOperationsOptions); const gaxOpts = extend(true, {}, options.gaxOptions); - let reqOpts = extend({}, options, { + const reqOpts = Object.assign({}, options, { parent: this.formattedName_, }); delete reqOpts.gaxOptions; @@ -746,16 +743,15 @@ class Instance extends common.GrpcServiceObject { // Copy over pageSize and pageToken values from gaxOptions. // However values set on options take precedence. if (gaxOpts) { - reqOpts = extend( - {}, - { - pageSize: (gaxOpts as GetBackupsOptions).pageSize, - pageToken: (gaxOpts as GetBackupsOptions).pageToken, - }, - reqOpts, - ); - delete (gaxOpts as GetBackupsOptions).pageSize; - delete (gaxOpts as GetBackupsOptions).pageToken; + const gax = gaxOpts as GetBackupsOptions; + if (gax.pageSize !== undefined) { + reqOpts.pageSize ??= gax.pageSize; + delete gax.pageSize; + } + if (gax.pageToken !== undefined) { + reqOpts.pageToken ??= gax.pageToken; + delete gax.pageToken; + } } this.request< @@ -771,7 +767,7 @@ class Instance extends common.GrpcServiceObject { }, (err, operations, nextPageRequest, ...args) => { const nextQuery = nextPageRequest! - ? extend({}, options, nextPageRequest!) + ? Object.assign({}, options, nextPageRequest!) : null; callback!(err, operations, nextQuery, ...args); @@ -899,7 +895,7 @@ class Instance extends common.GrpcServiceObject { ) { createStatement = 'CREATE DATABASE "' + name.split('/').pop() + '"'; } - const reqOpts = extend( + const reqOpts = Object.assign( { parent: this.formattedName_, createStatement: createStatement, @@ -1338,7 +1334,7 @@ class Instance extends common.GrpcServiceObject { : ({} as GetDatabasesOptions); const gaxOpts = extend(true, {}, options.gaxOptions); - let reqOpts = extend({}, options, { + const reqOpts = Object.assign({}, options, { parent: this.formattedName_, }); delete reqOpts.gaxOptions; @@ -1346,16 +1342,15 @@ class Instance extends common.GrpcServiceObject { // Copy over pageSize and pageToken values from gaxOptions. // However values set on options take precedence. if (gaxOpts) { - reqOpts = extend( - {}, - { - pageSize: (gaxOpts as GetBackupsOptions).pageSize, - pageToken: (gaxOpts as GetBackupsOptions).pageToken, - }, - reqOpts, - ); - delete (gaxOpts as GetBackupsOptions).pageSize; - delete (gaxOpts as GetBackupsOptions).pageToken; + const gax = gaxOpts as GetBackupsOptions; + if (gax.pageSize !== undefined) { + reqOpts.pageSize ??= gax.pageSize; + delete gax.pageSize; + } + if (gax.pageToken !== undefined) { + reqOpts.pageToken ??= gax.pageToken; + delete gax.pageToken; + } } this.request< @@ -1380,7 +1375,7 @@ class Instance extends common.GrpcServiceObject { }); } const nextQuery = nextPageRequest! - ? extend({}, options, nextPageRequest!) + ? Object.assign({}, options, nextPageRequest!) : null; callback(err, databases, nextQuery, ...args); @@ -1430,7 +1425,7 @@ class Instance extends common.GrpcServiceObject { getDatabasesStream(options: GetDatabasesOptions = {}): NodeJS.ReadableStream { const gaxOpts = extend(true, {}, options.gaxOptions); - let reqOpts = extend({}, options, { + const reqOpts = Object.assign({}, options, { parent: this.formattedName_, }); delete reqOpts.gaxOptions; @@ -1438,16 +1433,15 @@ class Instance extends common.GrpcServiceObject { // Copy over pageSize and pageToken values from gaxOptions. // However values set on options take precedence. if (gaxOpts) { - reqOpts = extend( - {}, - { - pageSize: (gaxOpts as GetBackupsOptions).pageSize, - pageToken: (gaxOpts as GetBackupsOptions).pageToken, - }, - reqOpts, - ); - delete (gaxOpts as GetBackupsOptions).pageSize; - delete (gaxOpts as GetBackupsOptions).pageToken; + const gax = gaxOpts as GetBackupsOptions; + if (gax.pageSize !== undefined) { + reqOpts.pageSize ??= gax.pageSize; + delete gax.pageSize; + } + if (gax.pageToken !== undefined) { + reqOpts.pageToken ??= gax.pageToken; + delete gax.pageToken; + } } return this.requestStream({ @@ -1632,7 +1626,7 @@ class Instance extends common.GrpcServiceObject { typeof optionsOrCallback === 'function' ? optionsOrCallback : cb!; const reqOpts = { - instance: extend( + instance: Object.assign( { name: this.formattedName_, }, diff --git a/handwritten/spanner/src/session.ts b/handwritten/spanner/src/session.ts index 3ebc728ed1a..6f73cdb5440 100644 --- a/handwritten/spanner/src/session.ts +++ b/handwritten/spanner/src/session.ts @@ -21,7 +21,6 @@ // eslint-disable-next-line @typescript-eslint/no-var-requires const common = require('./common-grpc/service-object'); import {promisifyAll} from '@google-cloud/promisify'; -import * as extend from 'extend'; import * as r from 'teeny-request'; import { Snapshot, @@ -250,7 +249,7 @@ export class Session extends common.GrpcServiceObject { return; } - extend(this, session); + Object.assign(this, session); callback(null, this, apiResponse); }); }, diff --git a/handwritten/spanner/test/backup.ts b/handwritten/spanner/test/backup.ts index a331f82beba..04c49a42756 100644 --- a/handwritten/spanner/test/backup.ts +++ b/handwritten/spanner/test/backup.ts @@ -17,7 +17,6 @@ import * as assert from 'assert'; import {EventEmitter} from 'events'; -import * as extend from 'extend'; import * as proxyquire from 'proxyquire'; import * as sinon from 'sinon'; import {util} from '@google-cloud/common'; @@ -33,7 +32,7 @@ import EncryptionType = google.spanner.admin.database.v1.CreateBackupEncryptionC let promisified = false; // let callbackified = false; -const fakePfy = extend({}, pfy, { +const fakePfy = Object.assign({}, pfy, { promisifyAll(klass, options) { if (klass.name !== 'Backup') { return; @@ -157,8 +156,8 @@ describe('Backup', () => { it('should make the correct request', done => { const QUERY = {}; - const ORIGINAL_QUERY = extend({}, QUERY); - const expectedReqOpts = extend({}, QUERY, { + const ORIGINAL_QUERY = Object.assign({}, QUERY); + const expectedReqOpts = Object.assign({}, QUERY, { parent: INSTANCE_NAME, backupId: BACKUP_NAME, backup: { @@ -351,8 +350,8 @@ describe('Backup', () => { it('should make the correct request', done => { const QUERY = {}; - const ORIGINAL_QUERY = extend({}, QUERY); - const expectedReqOpts = extend({}, QUERY, { + const ORIGINAL_QUERY = Object.assign({}, QUERY); + const expectedReqOpts = Object.assign({}, QUERY, { name: BACKUP_FORMATTED_NAME, }); @@ -623,8 +622,8 @@ describe('Backup', () => { it('should make the correct request', done => { const QUERY = {}; - const ORIGINAL_QUERY = extend({}, QUERY); - const expectedReqOpts = extend({}, QUERY, { + const ORIGINAL_QUERY = Object.assign({}, QUERY); + const expectedReqOpts = Object.assign({}, QUERY, { backup: { name: BACKUP_FORMATTED_NAME, expireTime: EXP_NEW_EXPIRE_TIME.toStruct(), @@ -683,8 +682,8 @@ describe('Backup', () => { describe('delete', () => { it('should make the correct request', done => { const QUERY = {}; - const ORIGINAL_QUERY = extend({}, QUERY); - const expectedReqOpts = extend({}, QUERY, { + const ORIGINAL_QUERY = Object.assign({}, QUERY); + const expectedReqOpts = Object.assign({}, QUERY, { name: BACKUP_FORMATTED_NAME, }); diff --git a/handwritten/spanner/test/batch-transaction.ts b/handwritten/spanner/test/batch-transaction.ts index 6f8d1389497..6fb7907ca2a 100644 --- a/handwritten/spanner/test/batch-transaction.ts +++ b/handwritten/spanner/test/batch-transaction.ts @@ -20,7 +20,6 @@ import {util} from '@google-cloud/common'; import * as pfy from '@google-cloud/promisify'; import * as assert from 'assert'; import {before, beforeEach, afterEach, describe, it} from 'mocha'; -import * as extend from 'extend'; import * as proxyquire from 'proxyquire'; import * as sinon from 'sinon'; @@ -36,7 +35,7 @@ import {ExecuteSqlRequest} from '../src/transaction'; import {CallOptions} from 'google-gax'; let promisified = false; -const fakePfy = extend({}, pfy, { +const fakePfy = Object.assign({}, pfy, { promisifyAll(klass, options) { if (klass.name !== 'BatchTransaction') { return; @@ -313,7 +312,11 @@ describe('BatchTransaction', () => { assert.ifError(err); parts.forEach((partition, i) => { - const expectedPartition = extend({}, expectedQuery, PARTITIONS[i]); + const expectedPartition = Object.assign( + {}, + expectedQuery, + PARTITIONS[i], + ); assert.deepStrictEqual(partition, expectedPartition); }); @@ -322,7 +325,7 @@ describe('BatchTransaction', () => { }); it('should update the transaction with returned metadata', done => { - const response = extend({}, RESPONSE, { + const response = Object.assign({}, RESPONSE, { transaction: { id: ID, readTimestamp: TIMESTAMP, diff --git a/handwritten/spanner/test/database.ts b/handwritten/spanner/test/database.ts index 106587cef08..e1b3b45cfa0 100644 --- a/handwritten/spanner/test/database.ts +++ b/handwritten/spanner/test/database.ts @@ -57,7 +57,7 @@ import { } from '../src/request_id_header'; let promisified = false; -const fakePfy = extend({}, pfy, { +const fakePfy = Object.assign({}, pfy, { promisifyAll(klass, options) { if (klass.name !== 'Database') { return; @@ -305,13 +305,13 @@ describe('Database', () => { }, }).Database; // The following commented out line is the one that will trigger the error. - // DatabaseCached = extend({}, Database); + // DatabaseCached = Object.assign({}, Database); DatabaseCached = Object.assign({}, Database); }); beforeEach(() => { fakeCodec.encode = util.noop; - extend(Database, DatabaseCached); + Object.assign(Database, DatabaseCached); database = new Database(INSTANCE, NAME, POOL_OPTIONS); database.parent = INSTANCE; database.databaseRole = 'parent_role'; @@ -385,7 +385,7 @@ describe('Database', () => { it('should inherit from ServiceObject', done => { const options = {}; - const instanceInstance = extend({}, INSTANCE, { + const instanceInstance = Object.assign({}, INSTANCE, { createDatabase(name, options_, callback) { assert.strictEqual(name, database.formattedName_); assert.strictEqual(options_, options); @@ -591,7 +591,7 @@ describe('Database', () => { const METADATA = { needsToBeSnakeCased: true, } as inst.IDatabase; - const ORIGINAL_METADATA = extend({}, METADATA); + const ORIGINAL_METADATA = Object.assign({}, METADATA); it('should make and return the request', () => { const requestReturnValue = {}; @@ -602,7 +602,7 @@ describe('Database', () => { assert.strictEqual(config.client, 'DatabaseAdminClient'); assert.strictEqual(config.method, 'updateDatabase'); - const expectedReqOpts = extend({}, METADATA, { + const expectedReqOpts = Object.assign({}, METADATA, { name: database.formattedName_, }); @@ -1648,7 +1648,7 @@ describe('Database', () => { database.request = config => { assert.deepStrictEqual( config.reqOpts, - extend({}, CONFIG.reqOpts, { + Object.assign({}, CONFIG.reqOpts, { session: SESSION.formattedName_, }), ); @@ -2182,7 +2182,7 @@ describe('Database', () => { otherConfiguration: {}, }; - const expectedReqOpts = extend({}, config, { + const expectedReqOpts = Object.assign({}, config, { database: database.formattedName_, }); @@ -2657,7 +2657,7 @@ describe('Database', () => { gaxOptions?: {}; } = {a: 'a', gaxOptions: gaxOpts}; - const expectedReqOpts = extend({}, options, { + const expectedReqOpts = Object.assign({}, options, { database: database.formattedName_, }); @@ -2687,7 +2687,7 @@ describe('Database', () => { a: string; gaxOptions?: {pageSize: number; pageToken: string; timeout: number}; } = {a: 'a', gaxOptions: gaxOptions}; - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, options, { @@ -2727,7 +2727,7 @@ describe('Database', () => { gaxOptions, }, ); - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, options, { @@ -2812,7 +2812,11 @@ describe('Database', () => { filter, gaxOptions: {timeout: 1000, autoPaginate: false}, }; - const EXPECTEDNEXTQUERY = extend({}, GETSESSIONOPTIONS, NEXTPAGEREQUEST); + const EXPECTEDNEXTQUERY = Object.assign( + {}, + GETSESSIONOPTIONS, + NEXTPAGEREQUEST, + ); database.request = (config, callback) => { callback(...RESPONSE); }; @@ -2831,7 +2835,7 @@ describe('Database', () => { const returnValue = {} as Duplex; it('should make and return the correct gax API call', () => { - const expectedReqOpts = extend({}, OPTIONS, { + const expectedReqOpts = Object.assign({}, OPTIONS, { database: database.formattedName_, }); delete expectedReqOpts.gaxOptions; @@ -2858,7 +2862,7 @@ describe('Database', () => { const gaxOptions = {pageSize, pageToken, timeout: 1000}; const expectedGaxOpts = {timeout: 1000}; const options = {gaxOptions}; - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, { database: database.formattedName_, @@ -2892,7 +2896,7 @@ describe('Database', () => { pageToken: optionsPageToken, gaxOptions, }; - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, { database: database.formattedName_, @@ -3501,8 +3505,8 @@ describe('Database', () => { it('should make the correct request', done => { const QUERY = {}; - const ORIGINAL_QUERY = extend({}, QUERY); - const expectedReqOpts = extend({}, QUERY, { + const ORIGINAL_QUERY = Object.assign({}, QUERY); + const expectedReqOpts = Object.assign({}, QUERY, { databaseId: NAME, parent: INSTANCE.formattedName_, backup: BACKUP_FORMATTED_NAME, @@ -3526,7 +3530,7 @@ describe('Database', () => { it('should accept a backup name', done => { const QUERY = {}; - const expectedReqOpts = extend({}, QUERY, { + const expectedReqOpts = Object.assign({}, QUERY, { databaseId: NAME, parent: INSTANCE.formattedName_, backup: BACKUP_FORMATTED_NAME, diff --git a/handwritten/spanner/test/index.ts b/handwritten/spanner/test/index.ts index 9dcae83797a..efdf2327236 100644 --- a/handwritten/spanner/test/index.ts +++ b/handwritten/spanner/test/index.ts @@ -90,7 +90,7 @@ const fakeGrpcGcp = () => { }; let promisified = false; -const fakePfy = extend({}, pfy, { +const fakePfy = Object.assign({}, pfy, { promisifyAll(klass, options) { if (klass.name !== 'Spanner') { return; @@ -223,7 +223,7 @@ describe('Spanner', () => { afterEach(() => sandbox.restore()); describe('instantiation', () => { - const EXPECTED_OPTIONS = extend({}, OPTIONS, { + const EXPECTED_OPTIONS = Object.assign({}, OPTIONS, { libName: 'gccl', libVersion: require('../../package.json').version, scopes: [], @@ -266,7 +266,7 @@ describe('Spanner', () => { const spanner = new Spanner(OPTIONS); - const expectedOptions = extend({}, EXPECTED_OPTIONS, { + const expectedOptions = Object.assign({}, EXPECTED_OPTIONS, { scopes: expectedScopes, }); @@ -281,7 +281,7 @@ describe('Spanner', () => { 'grpc.keepalive_time_ms': 300, 'grpc.keepalive_timeout_ms': 100, }; - const options = extend({}, OPTIONS, keepaliveOptions); + const options = Object.assign({}, OPTIONS, keepaliveOptions); const spanner = new Spanner(options); const expectedOptions = Object.assign( {}, @@ -879,7 +879,7 @@ describe('Spanner', () => { const CONFIG: any = { config: 'b', }; - const ORIGINAL_CONFIG = extend({}, CONFIG); + const ORIGINAL_CONFIG = Object.assign({}, CONFIG); beforeEach(() => { PATH = 'projects/' + spanner.projectId + '/instances/' + NAME; @@ -999,7 +999,7 @@ describe('Spanner', () => { describe('config.nodes', () => { it('should rename to nodeCount', () => { - const config = extend({}, CONFIG, {nodes: 10}); + const config = Object.assign({}, CONFIG, {nodes: 10}); const stub = sandbox.stub(spanner, 'request'); spanner.createInstance(NAME, config, assert.ifError); @@ -1013,8 +1013,8 @@ describe('Spanner', () => { describe('config.config', () => { it('should format a name', done => { const name = 'config-name'; - const config = extend({}, CONFIG, {config: name}); - const originalConfig = extend({}, config); + const config = Object.assign({}, CONFIG, {config: name}); + const originalConfig = Object.assign({}, config); spanner.request = config_ => { assert.deepStrictEqual(config, originalConfig); const reqOpts = config_.reqOpts; @@ -1084,14 +1084,14 @@ describe('Spanner', () => { const OPTIONS: GetInstancesOptions = { filter: 'b', }; - const ORIGINAL_OPTIONS = extend({}, OPTIONS); + const ORIGINAL_OPTIONS = Object.assign({}, OPTIONS); beforeEach(() => { spanner.request = util.noop; }); it('should make the correct request', done => { - const expectedReqOpts = extend({}, OPTIONS, { + const expectedReqOpts = Object.assign({}, OPTIONS, { parent: 'projects/' + spanner.projectId, }); @@ -1117,7 +1117,7 @@ describe('Spanner', () => { const pageToken = 'token'; const gaxOptions = {pageSize, pageToken, timeout: 1000}; const options = Object.assign({}, OPTIONS, {gaxOptions}); - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, OPTIONS, { @@ -1152,7 +1152,7 @@ describe('Spanner', () => { pageToken: optionsPageToken, gaxOptions, }); - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, OPTIONS, { @@ -1258,7 +1258,7 @@ describe('Spanner', () => { filter, gaxOptions: {timeout: 1000, autoPaginate: false}, }; - const EXPECTEDNEXTQUERY = extend( + const EXPECTEDNEXTQUERY = Object.assign( {}, GETINSTANCESOPTIONS, NEXTPAGEREQUEST, @@ -1279,11 +1279,11 @@ describe('Spanner', () => { const OPTIONS: GetInstancesOptions = { filter: 'b', }; - const ORIGINAL_OPTIONS = extend({}, OPTIONS); + const ORIGINAL_OPTIONS = Object.assign({}, OPTIONS); const returnValue = {}; it('should make and return the correct gax API call', () => { - const expectedReqOpts = extend({}, OPTIONS, { + const expectedReqOpts = Object.assign({}, OPTIONS, { parent: 'projects/' + spanner.projectId, }); @@ -1309,7 +1309,7 @@ describe('Spanner', () => { const pageToken = 'token'; const gaxOptions = {pageSize, pageToken, timeout: 1000}; const options = {gaxOptions}; - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, { parent: 'projects/' + spanner.projectId, @@ -1344,7 +1344,7 @@ describe('Spanner', () => { pageToken: optionsPageToken, gaxOptions, }; - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, { parent: 'projects/' + spanner.projectId, @@ -1391,7 +1391,7 @@ describe('Spanner', () => { const CONFIG: any = { baseConfig: 'x', }; - const ORIGINAL_CONFIG = extend({}, CONFIG); + const ORIGINAL_CONFIG = Object.assign({}, CONFIG); beforeEach(() => { PATH = 'projects/' + spanner.projectId + '/instanceConfigs/' + NAME; @@ -1556,7 +1556,7 @@ describe('Spanner', () => { pageSize: 5, gaxOptions: {autoPaginate: false}, }; - const expectedQuery = extend({}, options, { + const expectedQuery = Object.assign({}, options, { parent: 'projects/' + spanner.projectId, }); delete expectedQuery.gaxOptions; @@ -1589,7 +1589,7 @@ describe('Spanner', () => { const pageToken = 'token'; const gaxOptions = {pageSize, pageToken, timeout: 1000}; const options = Object.assign({}, OPTIONS, {gaxOptions}); - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, OPTIONS, { @@ -1624,7 +1624,7 @@ describe('Spanner', () => { pageToken: optionsPageToken, gaxOptions, }); - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, OPTIONS, { @@ -1677,7 +1677,7 @@ describe('Spanner', () => { filter, gaxOptions: {timeout: 1000, autoPaginate: false}, }; - const EXPECTEDNEXTQUERY = extend( + const EXPECTEDNEXTQUERY = Object.assign( {}, GETINSTANCECONFIGSOPTIONS, NEXTPAGEREQUEST, @@ -1697,7 +1697,7 @@ describe('Spanner', () => { const OPTIONS = { a: 'b', } as spnr.GetInstanceConfigOperationsOptions; - const ORIGINAL_OPTIONS = extend({}, OPTIONS); + const ORIGINAL_OPTIONS = Object.assign({}, OPTIONS); it('should make the correct request', done => { const gaxOpts = { @@ -1705,7 +1705,7 @@ describe('Spanner', () => { }; const options = {a: 'b', gaxOptions: gaxOpts}; - const expectedReqOpts = extend({}, OPTIONS, { + const expectedReqOpts = Object.assign({}, OPTIONS, { parent: spanner.projectFormattedName_, }); @@ -1730,7 +1730,7 @@ describe('Spanner', () => { const gaxOptions = {pageSize, pageToken, timeout: 1000}; const expectedGaxOpts = {timeout: 1000}; const options = Object.assign({}, OPTIONS, {gaxOptions}); - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, OPTIONS, { @@ -1764,7 +1764,7 @@ describe('Spanner', () => { pageToken: optionsPageToken, gaxOptions, }); - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, OPTIONS, { @@ -1814,7 +1814,7 @@ describe('Spanner', () => { filter, gaxOptions: {timeout: 1000, autoPaginate: false}, }; - const EXPECTED_NEXT_QUERY = extend( + const EXPECTED_NEXT_QUERY = Object.assign( {}, GET_INSTANCE_CONFIGS_OPERATIONS_OPTIONS, NEXT_PAGE_REQUEST, @@ -1844,7 +1844,7 @@ describe('Spanner', () => { const returnValue = {}; it('should make and return the correct gax API call', () => { - const expectedOptions: {gaxOptions?: {}} = extend({}, OPTIONS, { + const expectedOptions: {gaxOptions?: {}} = Object.assign({}, OPTIONS, { parent: 'projects/' + spanner.projectId, }); delete expectedOptions.gaxOptions; @@ -1937,7 +1937,7 @@ describe('Spanner', () => { gaxOptions, }, ); - const expectedReqOpts: {gaxOptions?: {}} = extend( + const expectedReqOpts: {gaxOptions?: {}} = Object.assign( {}, OPTIONS, { diff --git a/handwritten/spanner/test/instance-config.ts b/handwritten/spanner/test/instance-config.ts index eb5db686392..dd050be447f 100644 --- a/handwritten/spanner/test/instance-config.ts +++ b/handwritten/spanner/test/instance-config.ts @@ -18,7 +18,6 @@ import * as assert from 'assert'; import {before, beforeEach, afterEach, describe, it} from 'mocha'; import {grpc} from 'google-gax'; -import * as extend from 'extend'; import * as proxyquire from 'proxyquire'; import * as pfy from '@google-cloud/promisify'; import * as sinon from 'sinon'; @@ -28,7 +27,7 @@ import {Spanner, GetInstanceConfigResponse} from '../src'; import {CLOUD_RESOURCE_HEADER} from '../src/common'; let promisified = false; -const fakePfy = extend({}, pfy, { +const fakePfy = Object.assign({}, pfy, { promisifyAll(klass, options) { if (klass.name !== 'InstanceConfig') { return; @@ -100,7 +99,7 @@ describe('InstanceConfig', () => { }); it('should localize the request function', done => { - const spannerInstance = extend({}, SPANNER); + const spannerInstance = Object.assign({}, SPANNER); spannerInstance.request = function () { assert.strictEqual(this, spannerInstance); @@ -114,7 +113,7 @@ describe('InstanceConfig', () => { it('should inherit from ServiceObject', done => { const options = {}; - const spannerInstance = extend({}, SPANNER, { + const spannerInstance = Object.assign({}, SPANNER, { createInstanceConfig(name, options_, callback) { assert.strictEqual(name, instanceConfig.formattedName_); assert.strictEqual(options_, options); @@ -307,7 +306,7 @@ describe('InstanceConfig', () => { const METADATA = { needsToBeSnakeCased: true, } as instConfig.IInstanceConfig; - const ORIGINAL_METADATA = extend({}, METADATA); + const ORIGINAL_METADATA = Object.assign({}, METADATA); it('should make and return the request', () => { const requestReturnValue = {}; @@ -318,9 +317,9 @@ describe('InstanceConfig', () => { assert.strictEqual(config.client, 'InstanceAdminClient'); assert.strictEqual(config.method, 'updateInstanceConfig'); - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, - extend({}, METADATA, { + Object.assign({}, METADATA, { name: instanceConfig.formattedName_, }), ) as instConfig.IInstanceConfig as instConfig.SetInstanceConfigMetadataRequest; diff --git a/handwritten/spanner/test/instance.ts b/handwritten/spanner/test/instance.ts index 46666908d00..294ed0616a7 100644 --- a/handwritten/spanner/test/instance.ts +++ b/handwritten/spanner/test/instance.ts @@ -20,7 +20,6 @@ import * as assert from 'assert'; import {before, beforeEach, afterEach, describe, it} from 'mocha'; import {ApiError} from '@google-cloud/common'; import {grpc} from 'google-gax'; -import * as extend from 'extend'; import * as proxyquire from 'proxyquire'; import * as pfy from '@google-cloud/promisify'; import * as sinon from 'sinon'; @@ -36,7 +35,7 @@ import {PreciseDate} from '@google-cloud/precise-date'; import {CLOUD_RESOURCE_HEADER, AFE_SERVER_TIMING_HEADER} from '../src/common'; let promisified = false; -const fakePfy = extend({}, pfy, { +const fakePfy = Object.assign({}, pfy, { promisifyAll(klass, options) { if (klass.name !== 'Instance') { return; @@ -129,7 +128,7 @@ describe('Instance', () => { }); it('should localize the request function', done => { - const spannerInstance = extend({}, SPANNER); + const spannerInstance = Object.assign({}, SPANNER); spannerInstance.request = function () { assert.strictEqual(this, spannerInstance); @@ -142,7 +141,7 @@ describe('Instance', () => { }); it('should localize the requestStream function', done => { - const spannerInstance = extend({}, SPANNER); + const spannerInstance = Object.assign({}, SPANNER); const CONFIG = {}; spannerInstance.requestStream = function (config) { @@ -157,7 +156,7 @@ describe('Instance', () => { it('should inherit from ServiceObject', done => { const options = {}; - const spannerInstance = extend({}, SPANNER, { + const spannerInstance = Object.assign({}, SPANNER, { createInstance(name, options_, callback) { assert.strictEqual(name, instance.formattedName_); assert.strictEqual(options_, options); @@ -205,7 +204,7 @@ describe('Instance', () => { const OPTIONS = { a: 'b', } as inst.CreateDatabaseOptions; - const ORIGINAL_OPTIONS = extend({}, OPTIONS); + const ORIGINAL_OPTIONS = Object.assign({}, OPTIONS); it('should throw if a name is not provided', () => { assert.throws(() => { @@ -234,7 +233,7 @@ describe('Instance', () => { instance.request = config => { assert.deepStrictEqual(OPTIONS, ORIGINAL_OPTIONS); - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( { parent: instance.formattedName_, createStatement: 'CREATE DATABASE `' + NAME + '`', @@ -284,7 +283,7 @@ describe('Instance', () => { it('should only use the name in the createStatement', done => { instance.request = config => { - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( { parent: instance.formattedName_, createStatement: 'CREATE DATABASE `' + NAME + '`', @@ -304,7 +303,7 @@ describe('Instance', () => { it('should allow specifying session pool options', done => { const poolOptions = {}; - const options = extend({}, OPTIONS, { + const options = Object.assign({}, OPTIONS, { poolOptions, }); @@ -325,7 +324,7 @@ describe('Instance', () => { it('should allow specifying session pool constructor', done => { const poolCtor = {}; - const options = extend({}, OPTIONS, { + const options = Object.assign({}, OPTIONS, { poolCtor, }); @@ -348,7 +347,7 @@ describe('Instance', () => { it('should arrify and rename to extraStatements', done => { const SCHEMA = 'schema'; - const options = extend({}, OPTIONS, { + const options = Object.assign({}, OPTIONS, { schema: SCHEMA, }); @@ -364,7 +363,7 @@ describe('Instance', () => { it('should arrify and rename to extraStatements from array style schema filed', done => { const SCHEMA = ['schema', 'schema2']; - const options = extend({}, OPTIONS, { + const options = Object.assign({}, OPTIONS, { schema: SCHEMA, }); @@ -917,10 +916,10 @@ describe('Instance', () => { pageSize, gaxOptions: {autoPaginate: false}, } as inst.GetDatabasesOptions; - const ORIGINAL_OPTIONS = extend({}, OPTIONS); + const ORIGINAL_OPTIONS = Object.assign({}, OPTIONS); it('should make the correct request', done => { - const expectedReqOpts = extend({}, OPTIONS, { + const expectedReqOpts = Object.assign({}, OPTIONS, { parent: instance.formattedName_, }); delete expectedReqOpts.gaxOptions; @@ -947,7 +946,7 @@ describe('Instance', () => { const gaxOptions = {pageSize, pageToken, timeout: 1000}; const expectedGaxOpts = {timeout: 1000}; const options = {gaxOptions}; - const expectedReqOpts: {gaxOptions?: {}} = extend( + const expectedReqOpts: {gaxOptions?: {}} = Object.assign( {}, options, { @@ -981,7 +980,7 @@ describe('Instance', () => { pageToken: optionsPageToken, gaxOptions, }; - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, OPTIONS, { @@ -1087,7 +1086,7 @@ describe('Instance', () => { filter, gaxOptions: {timeout: 1000, autoPaginate: false}, }; - const EXPECTEDNEXTQUERY = extend( + const EXPECTEDNEXTQUERY = Object.assign( {}, GETDATABASESOPTIONS, NEXTPAGEREQUEST, @@ -1111,7 +1110,7 @@ describe('Instance', () => { const returnValue = {} as Duplex; it('should make and return the correct gax API call', () => { - const expectedReqOpts = extend({}, OPTIONS, { + const expectedReqOpts = Object.assign({}, OPTIONS, { parent: instance.formattedName_, }); delete expectedReqOpts.gaxOptions; @@ -1139,7 +1138,7 @@ describe('Instance', () => { const gaxOptions = {pageSize, pageToken, timeout: 1000}; const expectedGaxOpts = {timeout: 1000}; const options = {gaxOptions}; - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, { parent: instance.formattedName_, @@ -1173,7 +1172,7 @@ describe('Instance', () => { pageToken: optionsPageToken, gaxOptions, }; - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, OPTIONS, { @@ -1299,7 +1298,7 @@ describe('Instance', () => { const METADATA = { needsToBeSnakeCased: true, } as inst.IInstance; - const ORIGINAL_METADATA = extend({}, METADATA); + const ORIGINAL_METADATA = Object.assign({}, METADATA); it('should make and return the request', () => { const requestReturnValue = {}; @@ -1310,7 +1309,7 @@ describe('Instance', () => { assert.strictEqual(config.client, 'InstanceAdminClient'); assert.strictEqual(config.method, 'updateInstance'); - const expectedReqOpts = extend({}, METADATA, { + const expectedReqOpts = Object.assign({}, METADATA, { name: instance.formattedName_, }); @@ -1352,7 +1351,7 @@ describe('Instance', () => { const OPTIONS = { a: 'b', } as inst.GetBackupsOptions; - const ORIGINAL_OPTIONS = extend({}, OPTIONS); + const ORIGINAL_OPTIONS = Object.assign({}, OPTIONS); it('should make the correct request', done => { const gaxOpts = { @@ -1360,7 +1359,7 @@ describe('Instance', () => { }; const options = {a: 'b', gaxOptions: gaxOpts}; - const expectedReqOpts = extend({}, OPTIONS, { + const expectedReqOpts = Object.assign({}, OPTIONS, { parent: instance.formattedName_, }); @@ -1386,7 +1385,7 @@ describe('Instance', () => { const gaxOptions = {pageSize, pageToken, timeout: 1000}; const expectedGaxOpts = {timeout: 1000}; const options = {gaxOptions}; - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, { parent: instance.formattedName_, @@ -1419,7 +1418,7 @@ describe('Instance', () => { pageToken: optionsPageToken, gaxOptions, }; - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, { parent: instance.formattedName_, @@ -1522,7 +1521,7 @@ describe('Instance', () => { filter, gaxOptions: {timeout: 1000, autoPaginate: false}, }; - const EXPECTEDNEXTQUERY = extend( + const EXPECTEDNEXTQUERY = Object.assign( {}, GETBACKUPSOPTIONS, NEXTPAGEREQUEST, @@ -1546,7 +1545,7 @@ describe('Instance', () => { const returnValue = {} as Duplex; it('should make and return the correct gax API call', () => { - const expectedReqOpts = extend({}, OPTIONS, { + const expectedReqOpts = Object.assign({}, OPTIONS, { parent: instance.formattedName_, }); delete expectedReqOpts.gaxOptions; @@ -1574,7 +1573,7 @@ describe('Instance', () => { const gaxOptions = {pageSize, pageToken, timeout: 1000}; const expectedGaxOpts = {timeout: 1000}; const options = {gaxOptions}; - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, { parent: instance.formattedName_, @@ -1608,7 +1607,7 @@ describe('Instance', () => { pageToken: optionsPageToken, gaxOptions, }; - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, OPTIONS, { @@ -1668,7 +1667,7 @@ describe('Instance', () => { const OPTIONS = { a: 'b', } as inst.GetBackupOperationsOptions; - const ORIGINAL_OPTIONS = extend({}, OPTIONS); + const ORIGINAL_OPTIONS = Object.assign({}, OPTIONS); it('should make the correct request', done => { const gaxOpts = { @@ -1676,7 +1675,7 @@ describe('Instance', () => { }; const options = {a: 'b', gaxOptions: gaxOpts}; - const expectedReqOpts = extend({}, OPTIONS, { + const expectedReqOpts = Object.assign({}, OPTIONS, { parent: instance.formattedName_, }); @@ -1701,7 +1700,7 @@ describe('Instance', () => { const gaxOptions = {pageSize, pageToken, timeout: 1000}; const expectedGaxOpts = {timeout: 1000}; const options = Object.assign({}, OPTIONS, {gaxOptions}); - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, OPTIONS, { @@ -1735,7 +1734,7 @@ describe('Instance', () => { pageToken: optionsPageToken, gaxOptions, }); - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, OPTIONS, { @@ -1785,7 +1784,7 @@ describe('Instance', () => { filter, gaxOptions: {timeout: 1000, autoPaginate: false}, }; - const EXPECTEDNEXTQUERY = extend( + const EXPECTEDNEXTQUERY = Object.assign( {}, GETBACKUPOPSOPTIONS, NEXTPAGEREQUEST, @@ -1805,7 +1804,7 @@ describe('Instance', () => { const OPTIONS = { a: 'b', } as inst.GetDatabaseOperationsOptions; - const ORIGINAL_OPTIONS = extend({}, OPTIONS); + const ORIGINAL_OPTIONS = Object.assign({}, OPTIONS); it('should make the correct request', done => { const gaxOpts = { @@ -1813,7 +1812,7 @@ describe('Instance', () => { }; const options = {a: 'b', gaxOptions: gaxOpts}; - const expectedReqOpts = extend({}, OPTIONS, { + const expectedReqOpts = Object.assign({}, OPTIONS, { parent: instance.formattedName_, }); @@ -1839,7 +1838,7 @@ describe('Instance', () => { const gaxOptions = {pageSize, pageToken, timeout: 1000}; const expectedGaxOpts = {timeout: 1000}; const options = Object.assign({}, OPTIONS, {gaxOptions}); - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, OPTIONS, { @@ -1873,7 +1872,7 @@ describe('Instance', () => { pageToken: optionsPageToken, gaxOptions, }); - const expectedReqOpts = extend( + const expectedReqOpts = Object.assign( {}, OPTIONS, { @@ -1923,7 +1922,7 @@ describe('Instance', () => { filter, gaxOptions: {timeout: 1000, autoPaginate: false}, }; - const EXPECTEDNEXTQUERY = extend( + const EXPECTEDNEXTQUERY = Object.assign( {}, GETDATABASEOPSOPTIONS, NEXTPAGEREQUEST, diff --git a/handwritten/spanner/test/session-pool.ts b/handwritten/spanner/test/session-pool.ts index b27f2b43e78..d279da8699f 100644 --- a/handwritten/spanner/test/session-pool.ts +++ b/handwritten/spanner/test/session-pool.ts @@ -17,7 +17,6 @@ import * as assert from 'assert'; import {before, beforeEach, afterEach, describe, it} from 'mocha'; import * as events from 'events'; -import * as extend from 'extend'; import PQueue from 'p-queue'; import * as proxyquire from 'proxyquire'; import * as sinon from 'sinon'; @@ -47,7 +46,7 @@ export class FakeTransaction { async begin(): Promise {} } -const fakeStackTrace = extend({}, stackTrace); +const fakeStackTrace = Object.assign({}, stackTrace); function noop() {} diff --git a/handwritten/spanner/test/session.ts b/handwritten/spanner/test/session.ts index f02eb34e39c..3ca0f635fe8 100644 --- a/handwritten/spanner/test/session.ts +++ b/handwritten/spanner/test/session.ts @@ -19,7 +19,6 @@ import * as pfy from '@google-cloud/promisify'; import * as assert from 'assert'; import {before, beforeEach, describe, it} from 'mocha'; -import * as extend from 'extend'; import * as proxyquire from 'proxyquire'; import { CLOUD_RESOURCE_HEADER, @@ -33,7 +32,7 @@ import { } from '../src/request_id_header'; let promisified = false; -const fakePfy = extend({}, pfy, { +const fakePfy = Object.assign({}, pfy, { promisifyAll(klass, options) { if (klass.name !== 'Session') { return; @@ -173,7 +172,7 @@ describe('Session', () => { uniqueProperty: true, }; - const databaseInstance = extend({}, DATABASE, { + const databaseInstance = Object.assign({}, DATABASE, { createSession(options_, callback) { assert.strictEqual(options_, options); callback(null, createdSession, apiResponse); @@ -202,7 +201,7 @@ describe('Session', () => { }); it('should check for options', done => { - const databaseInstance = extend({}, DATABASE, { + const databaseInstance = Object.assign({}, DATABASE, { createSession(options, callback) { assert.deepStrictEqual(options, {}); callback(null, {}, apiResponse); @@ -224,7 +223,7 @@ describe('Session', () => { const error = new Error('Error.'); const apiResponse = {}; - const databaseInstance = extend({}, DATABASE, { + const databaseInstance = Object.assign({}, DATABASE, { createSession(options_, callback) { callback(error, null, apiResponse); }, diff --git a/handwritten/spanner/test/table.ts b/handwritten/spanner/test/table.ts index 9eb322621c2..88b4356d904 100644 --- a/handwritten/spanner/test/table.ts +++ b/handwritten/spanner/test/table.ts @@ -17,7 +17,6 @@ import * as pfy from '@google-cloud/promisify'; import * as assert from 'assert'; import {before, beforeEach, afterEach, describe, it} from 'mocha'; -import * as extend from 'extend'; import * as proxyquire from 'proxyquire'; import * as sinon from 'sinon'; import {split} from 'split-array-stream'; @@ -31,7 +30,7 @@ import IsolationLevel = google.spanner.v1.TransactionOptions.IsolationLevel; import ReadLockMode = google.spanner.v1.TransactionOptions.ReadWrite.ReadLockMode; let promisified = false; -const fakePfy = extend({}, pfy, { +const fakePfy = Object.assign({}, pfy, { promisifyAll(klass, options) { if (klass.name !== 'Table') { return; @@ -84,11 +83,11 @@ describe('Table', () => { Table = proxyquire('../src/table.js', { '@google-cloud/promisify': fakePfy, }).Table; - TableCached = extend({}, Table); + TableCached = Object.assign({}, Table); }); beforeEach(() => { - extend(Table, TableCached); + Object.assign(Table, TableCached); table = new Table(DATABASE, NAME); tableWithSchema = new Table(DATABASE, NAMEWITHSCHEMA); transaction = new FakeTransaction();