Merge pull request #13 from apigee/fix-accumulate-response

fixing an issue with accumulate-response where a lack of response body will cause errors instead of a successful request response cycle.
diff --git a/accumulate-response/index.js b/accumulate-response/index.js
index 8be60af..1ff26a2 100644
--- a/accumulate-response/index.js
+++ b/accumulate-response/index.js
@@ -29,7 +29,10 @@
 
     onend_response: function(req, res, data, next) {
       if (data && data.length > 0) accumulate(res, data);
-      var content = Buffer.concat(res._chunks);
+      var content = null;
+      if(res._chunks && res._chunks.length) {
+        content = Buffer.concat(res._chunks);
+      }
       delete res._chunks;
       next(null, content);
     }
diff --git a/test/accumulate-response-test.js b/test/accumulate-response-test.js
index 38b2258..0a13840 100644
--- a/test/accumulate-response-test.js
+++ b/test/accumulate-response-test.js
@@ -79,7 +79,7 @@
     plugin.onend_response.apply(null, [{}, res, Buffer.alloc(5, 'a'), onend_cb]);  
   });
 
-  it('will create a req._chunks object on the request object', (done) => {
+  it('will create a res._chunks object on the request object', (done) => {
     var res = {};
     var cb = (err, result) => {
       assert.equal(err, null);
@@ -91,4 +91,17 @@
 
     plugin.ondata_response.apply(null, [{}, res, Buffer.alloc(5, 'a'), cb]);
   });
+
+  it('will callback with null if no response body is present in targetResponse', (done) => {
+    var res = {};
+    var cb = (err, result) => {
+      assert.equal(err, null);
+      assert.equal(result, null);
+      done();
+    }
+
+    plugin.onend_response.apply(null, [{}, res, null, cb]);
+
+  });
+
 })