Skip to content
This repository was archived by the owner on Feb 7, 2026. It is now read-only.

Commit 2b66d1e

Browse files
authored
fix: should not override queryParameters if params not informed (#1359)
1 parent 1392422 commit 2b66d1e

2 files changed

Lines changed: 29 additions & 7 deletions

File tree

src/bigquery.ts

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1469,13 +1469,15 @@ export class BigQuery extends Service {
14691469
delete query.destination;
14701470
}
14711471

1472-
const {parameterMode, params} = this.buildQueryParams_(
1473-
query.params,
1474-
query.types
1475-
);
1476-
query.parameterMode = parameterMode;
1477-
query.queryParameters = params;
1478-
delete query.params;
1472+
if (query.params) {
1473+
const {parameterMode, params} = this.buildQueryParams_(
1474+
query.params,
1475+
query.types
1476+
);
1477+
query.parameterMode = parameterMode;
1478+
query.queryParameters = params;
1479+
delete query.params;
1480+
}
14791481

14801482
const reqOpts: JobOptions = {};
14811483
reqOpts.configuration = {

test/bigquery.ts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2343,6 +2343,26 @@ describe('BigQuery', () => {
23432343
);
23442344
});
23452345

2346+
it('should not modify queryParameters if params is not informed', done => {
2347+
bq.createJob = (reqOpts: JobOptions) => {
2348+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
2349+
assert.strictEqual((reqOpts as any).params, undefined);
2350+
assert.deepStrictEqual(
2351+
reqOpts.configuration?.query?.queryParameters,
2352+
NAMED_PARAMS
2353+
);
2354+
done();
2355+
};
2356+
2357+
bq.createQueryJob(
2358+
{
2359+
query: QUERY_STRING,
2360+
queryParameters: NAMED_PARAMS,
2361+
},
2362+
assert.ifError
2363+
);
2364+
});
2365+
23462366
describe('named', () => {
23472367
it('should set the correct parameter mode', done => {
23482368
bq.createJob = (reqOpts: JobOptions) => {

0 commit comments

Comments
 (0)