From e8f91f49080bd8bcb5c870c360f8f3a5d55a2c54 Mon Sep 17 00:00:00 2001 From: coderaiser Date: Tue, 29 Nov 2016 17:23:09 +0200 Subject: [PATCH] test(static) add --- test/static.js | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 test/static.js diff --git a/test/static.js b/test/static.js new file mode 100644 index 00000000..b554e83d --- /dev/null +++ b/test/static.js @@ -0,0 +1,58 @@ +'use strict'; + +const path = require('path'); +const fs = require('fs'); +const test = require('tape'); +const promisify = require('es6-promisify'); +const pullout = require('pullout'); +const request = require('request'); + +const before = require('./before'); + +const warp = (fn, ...a) => (...b) => fn(...b, ...a); + +const _pullout = promisify(pullout); + +const get = promisify((url, fn) => { + fn(null, request(url)); +}); + +test('cloudcmd: staatic', (t) => { + before({}, (port, after) => { + const name = 'package.json'; + + get(`http://localhost:${port}/${name}`) + .then(warp(_pullout, 'string')) + .then(JSON.parse) + .then((json) => { + t.equal(json.name, 'cloudcmd', 'should download file'); + t.end(); + after(); + }) + .catch((error) => { + console.log(error); + }); + }); +}); + +test('cloudcmd: staatic: not found', (t) => { + const name = 'package.json'; + + before({}, (port, after) => { + const name = Math.random(); + get(`http://localhost:${port}/${name}`) + .then((res) => { + res.on('response', (res) => { + t.equal(res.statusCode, 404, 'should return 404'); + }); + res.on('end', () => { + t.end(); + after(); + }); + }) + .catch((error) => { + console.log(error); + }); + }); +}); +