From cb363147bf367cbdc87a9559f5041c519dd8e672 Mon Sep 17 00:00:00 2001 From: Ali Ijaz Sheikh Date: Thu, 22 Dec 2016 14:48:16 -0800 Subject: [PATCH] Remove duplicate isDisabled logic from controller The debuglet also has the same isDisabled check. Arguably the controller shouldn't be doing this check at all because we do get a valid debuggee.id back from the service and we should faithfully report that to the client of the Controller interface. Business logic to deal with a disabled debuggee belongs in the agent. --- src/controller.js | 2 -- test/test-controller.js | 44 ++++++++++++++++++++--------------------- 2 files changed, 22 insertions(+), 24 deletions(-) diff --git a/src/controller.js b/src/controller.js index f1f2567f..14d513ac 100644 --- a/src/controller.js +++ b/src/controller.js @@ -64,8 +64,6 @@ Controller.prototype.register = function(debuggee, callback) { new Error('unable to register, statusCode ' + response.statusCode)); } else if (!body.debuggee) { callback(new Error('invalid response body from server')); - } else if (body.debuggee.isDisabled) { - callback('Debuggee is disabled on server'); } else { debuggee.id = body.debuggee.id; callback(null, body); diff --git a/test/test-controller.js b/test/test-controller.js index d3a1f17e..51e84db8 100644 --- a/test/test-controller.js +++ b/test/test-controller.js @@ -95,28 +95,28 @@ describe('Controller API', function() { }); }); - it('should return error when debuggee is disabled', function(done) { - var scope = nock(url) - .post(api + '/debuggees/register') - .reply(200, { - debuggee: { - id: 'fake-debuggee', - isDisabled: true - }, - activePeriodSec: 600, - }); - var debuggee = new Debuggee({ - project: 'fake-project', - uniquifier: 'fake-id', - description: 'unit test' - }); - var controller = new Controller(fakeDebug); - controller.register(debuggee, function(err/*, result*/) { - assert(err, 'expected an error'); - scope.done(); - done(); - }); - }); + it('should not return an error when the debuggee isDisabled', + function(done) { + var scope = nock(url) + .post(api + '/debuggees/register') + .reply(200, { + debuggee: {id: 'fake-debuggee', isDisabled: true}, + activePeriodSec: 600, + }); + var debuggee = new Debuggee({ + project: 'fake-project', + uniquifier: 'fake-id', + description: 'unit test' + }); + var controller = new Controller(fakeDebug); + controller.register(debuggee, function(err, result) { + assert.ifError(err, 'not expected an error'); + assert.equal(result.debuggee.id, 'fake-debuggee'); + assert.ok(result.debuggee.isDisabled); + scope.done(); + done(); + }); + }); });