diff --git a/src/io/deviceManager.js b/src/io/deviceManager.js
index 2ba018ce3..9f7075e52 100644
--- a/src/io/deviceManager.js
+++ b/src/io/deviceManager.js
@@ -319,7 +319,7 @@ class DeviceManager {
                 json: {}
             }, (err, res, body) => {
                 if (err) return reject(err);
-                if (res.statusCode !== 200) reject(body);
+                if (res.statusCode !== 200) return reject(body);
                 resolve(body);
             });
         });
diff --git a/test/unit/io_deviceManager.js b/test/unit/io_deviceManager.js
index f4d32d06f..499b995fe 100644
--- a/test/unit/io_deviceManager.js
+++ b/test/unit/io_deviceManager.js
@@ -24,11 +24,16 @@ test('list', t => {
     const deviceManager = new DeviceManager();
     deviceManager
         .list('test', 'test', null)
-        .catch(err => {
-            t.true((typeof err === 'undefined') || (typeof err === 'object'));
-        })
-        .then(body => {
-            t.true((typeof body === 'undefined') || (typeof body === 'object'));
-            t.end();
-        });
+        .then(
+            body => {
+                // SDM is running
+                t.type(body, 'object');
+                t.end();
+            },
+            err => {
+                // If SDM is not running error is expected, continue
+                t.true(typeof err === 'object' || typeof err === 'undefined');
+                t.end();
+            }
+        );
 });