Skip to content

Commit 39624bf

Browse files
committed
expanded tests for creating families
1 parent c8a2deb commit 39624bf

File tree

1 file changed

+66
-34
lines changed

1 file changed

+66
-34
lines changed

test/bigtable/index.js

Lines changed: 66 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -222,42 +222,74 @@ describe('Bigtable', function() {
222222
bigtable.createTable(TABLE_ID, options, assert.ifError);
223223
});
224224

225-
it('should set the column families', function(done) {
226-
var options = {
227-
families: [
228-
'a',
229-
{
230-
name: 'b',
231-
rule: 'd'
232-
},
233-
{
234-
name: 'c',
235-
rule: {}
236-
}
237-
]
238-
};
239-
240-
var fakeRule = {};
241-
242-
FakeFamily.formatRule_ = function(rule) {
243-
assert.strictEqual(rule, options.families[2].rule);
244-
return fakeRule;
245-
};
225+
describe('creating column families', function() {
226+
it('should accept a family name', function(done) {
227+
var options = {
228+
families: ['a', 'b']
229+
};
230+
231+
bigtable.request = function(protoOpts, reqOpts) {
232+
assert.deepEqual(reqOpts.table.columnFamilies, {
233+
a: {},
234+
b: {}
235+
});
236+
237+
done();
238+
};
239+
240+
bigtable.createTable(TABLE_ID, options, assert.ifError);
241+
});
246242

247-
bigtable.request = function(protoOpts, reqOpts) {
248-
assert.deepEqual(reqOpts.table.columnFamilies, {
249-
a: {},
250-
b: {
251-
gcExpression: 'd'
252-
},
253-
c: {
254-
gcRule: fakeRule
255-
}
256-
});
257-
done();
258-
};
243+
it('should accept a garbage collection expression', function(done) {
244+
var options = {
245+
families: [
246+
{
247+
name: 'c',
248+
rule: 'd'
249+
}
250+
]
251+
};
252+
253+
bigtable.request = function(protoOpts, reqOpts) {
254+
assert.deepEqual(reqOpts.table.columnFamilies, {
255+
c: {
256+
gcExpression: 'd'
257+
}
258+
});
259+
done();
260+
};
261+
262+
bigtable.createTable(TABLE_ID, options, assert.ifError);
263+
});
259264

260-
bigtable.createTable(TABLE_ID, options, assert.ifError);
265+
it('should accept a garbage collection object', function(done) {
266+
var options = {
267+
families: [
268+
{
269+
name: 'e',
270+
rule: {}
271+
}
272+
]
273+
};
274+
275+
var fakeRule = { a: 'b' };
276+
277+
FakeFamily.formatRule_ = function(rule) {
278+
assert.strictEqual(rule, options.families[0].rule);
279+
return fakeRule;
280+
};
281+
282+
bigtable.request = function(protoOpts, reqOpts) {
283+
assert.deepEqual(reqOpts.table.columnFamilies, {
284+
e: {
285+
gcRule: fakeRule
286+
}
287+
});
288+
done();
289+
};
290+
291+
bigtable.createTable(TABLE_ID, options, assert.ifError);
292+
});
261293
});
262294

263295
it('should return an error to the callback', function(done) {

0 commit comments

Comments
 (0)