--- /dev/null
+var tap = require('tap')
+
+var server = require('./lib/server.js')
+var common = require('./lib/common.js')
+
+tap.test('get fails with 403', function (t) {
+ server.expect('/habanero', function (req, res) {
+ t.equal(req.method, 'GET', 'got expected method')
+
+ res.writeHead(403)
+ res.end('{"error":"get that cat out of the toilet that\'s gross omg"}')
+ })
+
+ var client = common.freshClient()
+ client.config.retry.minTimeout = 100
+ client.get(
+ 'http://localhost:1337/habanero',
+ {},
+ function (er) {
+ t.ok(er, 'failed as expected')
+
+ t.equal(er.statusCode, 403, 'status code was attached as expected')
+ t.equal(er.code, 'E403', 'error code was formatted as expected')
+ t.equal(
+ er.message,
+ 'get that cat out of the toilet that\'s gross omg : habanero',
+ 'got error message'
+ )
+
+ server.close()
+ t.end()
+ }
+ )
+})