Skip to content

Commit b8dff43

Browse files
committed
Merge pull request #402 from stephenplusplus/spp--regression-test-fixes
fix regression tests.
2 parents c5ecbf7 + 8713566 commit b8dff43

4 files changed

Lines changed: 35 additions & 31 deletions

File tree

lib/pubsub/topic.js

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ Topic.prototype.publish = function(messages, callback) {
152152
};
153153

154154
/**
155-
* Delete the topic.
155+
* Delete the topic. This will also delete any subscriptions to this topic.
156156
*
157157
* @param {function=} callback - The callback function.
158158
*
@@ -190,7 +190,13 @@ Topic.prototype.delete = function(callback) {
190190
* }, function(err, subscriptions, nextQuery) {});
191191
*/
192192
Topic.prototype.getSubscriptions = function(query, callback) {
193+
if (util.is(query, 'function')) {
194+
callback = query;
195+
query = {};
196+
}
197+
193198
query.query = 'pubsub.googleapis.com/topic in (' + this.name + ')';
199+
194200
this.pubsub.getSubscriptions(query, callback);
195201
};
196202

regression/pubsub.js

Lines changed: 18 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020

2121
var assert = require('assert');
2222
var async = require('async');
23+
var uuid = require('node-uuid');
2324

2425
var env = require('./env.js');
2526
var gcloud = require('../lib')(env);
@@ -28,8 +29,20 @@ var Subscription = require('../lib/pubsub/subscription.js');
2829

2930
var pubsub = gcloud.pubsub();
3031

32+
function generateTopicName() {
33+
return 'test-topic-' + uuid.v4();
34+
}
35+
36+
function generateSubName() {
37+
return 'test-subscription-' + uuid.v4();
38+
}
39+
3140
describe('pubsub', function() {
32-
var topicNames = ['topic1', 'topic2', 'topic3'];
41+
var topicNames = [
42+
generateTopicName(),
43+
generateTopicName(),
44+
generateTopicName()
45+
];
3346

3447
function deleteAllTopics(callback) {
3548
// TODO: Handle pagination.
@@ -91,45 +104,21 @@ describe('pubsub', function() {
91104
});
92105

93106
describe('Subscription', function() {
94-
var TOPIC_NAME = 'test-topic';
107+
var TOPIC_NAME = generateTopicName();
95108
var subscriptions = [
96109
{
97-
name: 'sub1',
110+
name: generateSubName(),
98111
options: { ackDeadlineSeconds: 30 }
99112
},
100113
{
101-
name: 'sub2',
114+
name: generateSubName(),
102115
options: { ackDeadlineSeconds: 60 }
103116
}
104117
];
105118
var topic;
106119

107-
function deleteAllTopics(callback) {
108-
pubsub.getTopics(function(err, topics) {
109-
if (err) {
110-
callback(err);
111-
return;
112-
}
113-
async.parallel(topics.map(function(topic) {
114-
return topic.delete.bind(topic);
115-
}), callback);
116-
});
117-
}
118-
119-
function deleteAllSubscriptions(callback) {
120-
pubsub.getSubscriptions(function(err, subs) {
121-
if (err) {
122-
callback(err);
123-
return;
124-
}
125-
async.parallel(subs.map(function(sub) {
126-
return sub.delete.bind(sub);
127-
}), callback);
128-
});
129-
}
130-
131120
before(function(done) {
132-
async.parallel([deleteAllTopics, deleteAllSubscriptions], function(err) {
121+
deleteAllTopics(function(err) {
133122
assert.ifError(err);
134123
// Create a new test topic.
135124
pubsub.createTopic(TOPIC_NAME, function(err, newTopic) {

regression/storage.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -370,7 +370,7 @@ describe('storage', function() {
370370

371371
file.download(function(err, remoteContents) {
372372
assert.ifError(err);
373-
assert.equal(fileContents, remoteContents);
373+
assert.equal(String(fileContents), String(remoteContents));
374374
done();
375375
});
376376
});

test/pubsub/topic.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,15 @@ describe('Topic', function() {
211211
};
212212
topic.getSubscriptions({}, assert.ifError);
213213
});
214+
215+
it('should attach scoped topic query without a query', function(done) {
216+
topic.pubsub.getSubscriptions = function(q) {
217+
assert.equal(
218+
q.query, 'pubsub.googleapis.com/topic in (' + topic.name + ')');
219+
done();
220+
};
221+
topic.getSubscriptions(assert.ifError);
222+
});
214223
});
215224

216225
describe('subscribe', function() {

0 commit comments

Comments
 (0)