Skip to content
This repository has been archived by the owner on Jan 19, 2018. It is now read-only.

Commit

Permalink
Add tests
Browse files Browse the repository at this point in the history
  • Loading branch information
jamiebuilds committed Nov 25, 2015
1 parent 6ae4a37 commit 6827445
Show file tree
Hide file tree
Showing 5 changed files with 70 additions and 0 deletions.
1 change: 1 addition & 0 deletions .gitignore
@@ -1 +1,2 @@
node_modules
compiled
1 change: 1 addition & 0 deletions fixtures/fixture.js
@@ -0,0 +1 @@
const square = n => n * n;
5 changes: 5 additions & 0 deletions fixtures/fixture.txt
@@ -0,0 +1,5 @@
"use strict";

var square = function square(n) {
return n * n;
};
9 changes: 9 additions & 0 deletions package.json
Expand Up @@ -11,10 +11,19 @@
"bugs": {
"url": "https://github.com/babel/babel-connect/issues"
},
"scripts": {
"test": "mocha test.js"
},
"dependencies": {
"babel-core": "^6.2.1",
"lodash": "2.4.1",
"mkdirp": "^0.5.0",
"through": "2.3.4"
},
"devDependencies": {
"babel-preset-es2015": "^6.1.18",
"mocha": "^2.3.4",
"serve-static": "^1.10.0",
"supertest": "^1.1.0"
}
}
54 changes: 54 additions & 0 deletions test.js
@@ -0,0 +1,54 @@
var http = require("http");
var serveStatic = require("serve-static");
var request = require("supertest");
var assert = require("assert");
var babelMiddleware = require("./");

var serve = serveStatic("cache");
var babel = babelMiddleware({
options: {
presets: ["es2015"]
},
src: "fixtures",
dest: "compiled",
ignore: /node_modules/
});

var server = http.createServer(function(req, res) {
function onError(err) {
res.statusCode = err.status || 500;
res.end(err.message);
return;
}
babel(req, res, function(err) {
if (err) return onError(err);
serve(req, res, function(err) {
if (err) return onError(err);
res.setHeader("Content-Type", "text/javascript");
res.end();
});
});
});

describe("babelMiddleware()", function() {
it("should compile", function(done) {
request(server)
.get("/fixture.js")
.expect(function(res) {
assert.ok(
res.text.indexOf("function square(n) {") > -1,
"`" + res.text + "` should contain `function square(n) {`"
);
})
.expect(200, done);
});

it("should not compile", function(done) {
request(server)
.get("/fixture.txt")
.expect(function(res) {
assert.equal(res.text, "");
})
.expect(200, done);
});
});

0 comments on commit 6827445

Please sign in to comment.