Skip to content

Commit c891c53

Browse files
author
Ace Nassri
committed
Address comments
1 parent 3b98afd commit c891c53

3 files changed

Lines changed: 26 additions & 45 deletions

File tree

bigquery/system-test/tables.test.js

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -36,12 +36,10 @@ var options = {
3636
schema: 'Name:string, Age:integer, Weight:float, IsMagic:boolean',
3737
rows: rows
3838
};
39-
var copyOptions = {
40-
srcDataset: options.dataset,
41-
srcTable: options.table,
42-
destDataset: generateUuid(),
43-
destTable: generateUuid()
44-
};
39+
var srcDataset = options.dataset;
40+
var srcTable = options.table;
41+
var destDataset = generateUuid();
42+
var destTable = generateUuid();
4543

4644
describe('bigquery:tables', function () {
4745
before(function (done) {
@@ -52,10 +50,10 @@ describe('bigquery:tables', function () {
5250
bucket.upload(options.localFilePath, function (err) {
5351
assert.ifError(err, 'file upload succeeded');
5452
// Create srcDataset
55-
bigquery.createDataset(copyOptions.srcDataset, function (err) {
53+
bigquery.createDataset(srcDataset, function (err) {
5654
assert.ifError(err, 'srcDataset creation succeeded');
5755
// Create destDataset
58-
bigquery.createDataset(copyOptions.destDataset, function (err) {
56+
bigquery.createDataset(destDataset, function (err) {
5957
assert.ifError(err, 'destDataset creation succeeded');
6058
done();
6159
});
@@ -66,9 +64,9 @@ describe('bigquery:tables', function () {
6664

6765
after(function (done) {
6866
// Delete srcDataset
69-
bigquery.dataset(copyOptions.srcDataset).delete({ force: true }, function () {
67+
bigquery.dataset(srcDataset).delete({ force: true }, function () {
7068
// Delete destDataset
71-
bigquery.dataset(copyOptions.destDataset).delete({ force: true }, function () {
69+
bigquery.dataset(destDataset).delete({ force: true }, function () {
7270
// Delete files
7371
storage.bucket(options.bucket).deleteFiles({ force: true }, function (err) {
7472
if (err) {
@@ -171,16 +169,16 @@ describe('bigquery:tables', function () {
171169

172170
describe('copyTable', function () {
173171
it('should copy a table between datasets', function (done) {
174-
program.copyTable(copyOptions, function (err, metadata) {
172+
program.copyTable(srcDataset, srcTable, destDataset, destTable, function (err, metadata) {
175173
assert.equal(err, null);
176174
assert.deepEqual(metadata.status, { state: 'DONE' });
177175

178-
bigquery.dataset(copyOptions.srcDataset).table(copyOptions.srcTable).exists(
176+
bigquery.dataset(srcDataset).table(srcTable).exists(
179177
function (err, exists) {
180178
assert.equal(err, null);
181179
assert.equal(exists, true, 'srcTable exists');
182180

183-
bigquery.dataset(copyOptions.destDataset).table(copyOptions.destTable).exists(
181+
bigquery.dataset(destDataset).table(destTable).exists(
184182
function (err, exists) {
185183
assert.equal(err, null);
186184
assert.equal(exists, true, 'destTable exists');

bigquery/tables.js

Lines changed: 10 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -104,22 +104,13 @@ function deleteTable (options, callback) {
104104
}
105105
// [END delete_table]
106106

107-
// [START copy_table]
108-
/**
109-
* Create a copy of an existing table
110-
*
111-
* @param {object} options Configuration options.
112-
* @param {string} options.srcDataset The source dataset ID.
113-
* @param {string} options.srcTable The source table ID.
114-
* @param {string} options.destDataset The destination dataset ID.
115-
* @param {string} options.destTable The destination table ID. Will be created if it doesn't exist.
116-
* @param {function} callback The callback function.
117-
*/
118-
function copyTable (options, callback) {
119-
var srcTable = bigquery.dataset(options.srcDataset).table(options.srcTable);
120-
var destTable = bigquery.dataset(options.destDataset).table(options.destTable);
107+
function copyTable (srcDataset, srcTable, destDataset, destTable, callback) {
108+
var bigquery = BigQuery();
109+
110+
var srcTableObj = bigquery.dataset(srcDataset).table(srcTable);
111+
var destTableObj = bigquery.dataset(destDataset).table(destTable);
121112

122-
srcTable.copy(destTable, function (err, job) {
113+
srcTableObj.copy(destTableObj, function (err, job) {
123114
if (err) {
124115
return callback(err);
125116
}
@@ -133,7 +124,6 @@ function copyTable (options, callback) {
133124
});
134125
});
135126
}
136-
// [END copy_table]
137127

138128
// [START import_file]
139129
/**
@@ -272,7 +262,10 @@ cli
272262
'Make a copy of an existing table.', {},
273263
function (options) {
274264
program.copyTable(
275-
utils.pick(options, ['srcDataset', 'srcTable', 'destDataset', 'destTable']),
265+
options.srcDataset,
266+
options.srcTable,
267+
options.destDataset,
268+
options.destTable,
276269
utils.makeHandler()
277270
);
278271
}

bigquery/test/tables.test.js

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -274,18 +274,11 @@ describe('bigquery:tables', function () {
274274
});
275275

276276
describe('copyTable', function () {
277-
var options = {
278-
srcDataset: srcDataset,
279-
srcTable: srcTable,
280-
destDataset: destDataset,
281-
destTable: destTable
282-
};
283-
284277
it('should copy a table', function () {
285278
var sample = getSample();
286279
var callback = sinon.stub();
287280

288-
sample.program.copyTable(options, callback);
281+
sample.program.copyTable(srcDataset, srcTable, destDataset, destTable, callback);
289282

290283
assert.equal(sample.mocks.table.copy.calledOnce, true);
291284
assert.deepEqual(
@@ -305,7 +298,7 @@ describe('bigquery:tables', function () {
305298
var callback = sinon.stub();
306299
sample.mocks.table.copy.yields(error);
307300

308-
sample.program.copyTable(options, callback);
301+
sample.program.copyTable(srcDataset, srcTable, destDataset, destTable, callback);
309302

310303
assert.equal(callback.calledOnce, true);
311304
assert.deepEqual(callback.firstCall.args, [error]);
@@ -437,12 +430,9 @@ describe('bigquery:tables', function () {
437430

438431
program.main(['copy', srcDataset, srcTable, destDataset, destTable]);
439432
assert.equal(program.copyTable.calledOnce, true);
440-
assert.deepEqual(program.copyTable.firstCall.args.slice(0, -1), [{
441-
srcDataset: srcDataset,
442-
srcTable: srcTable,
443-
destDataset: destDataset,
444-
destTable: destTable
445-
}]);
433+
assert.deepEqual(program.copyTable.firstCall.args.slice(0, -1),
434+
[srcDataset, srcTable, destDataset, destTable]
435+
);
446436
});
447437

448438
it('should call exportTableToGCS', function () {

0 commit comments

Comments
 (0)