From 8c1ebf8b917a633f7577b9cd62b340fe4c00fc88 Mon Sep 17 00:00:00 2001 From: Jim Myhrberg Date: Thu, 15 Mar 2012 00:00:44 +0000 Subject: [PATCH] switch to using and running *.coffee files instead of *.js as this is an app, not a package --- .gitignore | 1 + Makefile | 10 +--- Procfile | 2 +- heartbit.js | 47 ----------------- .../host_redirect.coffee | 0 middleware/host_redirect.js | 16 ------ package.json | 4 ++ src/heartbit.coffee => server.coffee | 0 test/host_redirect.test.js | 50 ------------------- .../middleware}/host_redirect.test.coffee | 2 +- 10 files changed, 8 insertions(+), 124 deletions(-) delete mode 100644 heartbit.js rename {src/middleware => middleware}/host_redirect.coffee (100%) delete mode 100644 middleware/host_redirect.js rename src/heartbit.coffee => server.coffee (100%) delete mode 100644 test/host_redirect.test.js rename {src/test => test/middleware}/host_redirect.test.coffee (92%) diff --git a/.gitignore b/.gitignore index cd72d17..239d103 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ .DS_Store node_modules docs +*.js \ No newline at end of file diff --git a/Makefile b/Makefile index e439a90..6b6dacf 100644 --- a/Makefile +++ b/Makefile @@ -2,22 +2,14 @@ .PHONY: build watch docs test deploy BIN = ./node_modules/.bin -COFFEE_SRC = ./src -COFFEE_OUT = ./ REPORTER = spec TEST_DIR = ./test deploy: git push heroku master -build: - $(BIN)/coffee -c -o $(COFFEE_OUT) $(COFFEE_SRC) - -watch: - $(BIN)/coffee -cw -o $(COFFEE_OUT) $(COFFEE_SRC) - docs: $(BIN)/docco $(shell find $(COFFEE_SRC) -name '*.coffee') test: - $(BIN)/mocha -R $(REPORTER) $(TEST_DIR)/*.js + $(BIN)/mocha -R $(REPORTER) $(shell find $(TEST_DIR) -name '*.test.coffee') diff --git a/Procfile b/Procfile index fa48714..9e9c9c3 100644 --- a/Procfile +++ b/Procfile @@ -1 +1 @@ -web: node heartbit.js \ No newline at end of file +web: coffee server.coffee \ No newline at end of file diff --git a/heartbit.js b/heartbit.js deleted file mode 100644 index 4b1058f..0000000 --- a/heartbit.js +++ /dev/null @@ -1,47 +0,0 @@ -(function() { - var express, server; - - express = require('express'); - - server = module.exports = express.createServer(); - - server.configure(function() { - server.set('views', __dirname + '/views'); - server.set('view engine', 'coffee'); - server.register('.coffee', require('coffeekup').adapters.express); - server.use(express.bodyParser()); - server.use(express.methodOverride()); - return server.use(express.static(__dirname + '/public')); - }); - - server.configure('development', function() { - return server.use(express.errorHandler({ - dumpExceptions: true, - showStack: true - })); - }); - - server.configure('production', function() { - server.use(express.errorHandler()); - return server.use(require('./middleware/host_redirect')({ - "www.heartb.it": "http://heartb.it/" - })); - }); - - server.get('/', function(req, res) { - return res.render('index', { - format: true - }); - }); - - server.get('*', function(req, res) { - return res.render('404', { - format: true - }); - }); - - server.listen(process.env.PORT || 3000); - - console.log("Express server listening on port %d in %s mode", server.address().port, server.settings.env); - -}).call(this); diff --git a/src/middleware/host_redirect.coffee b/middleware/host_redirect.coffee similarity index 100% rename from src/middleware/host_redirect.coffee rename to middleware/host_redirect.coffee diff --git a/middleware/host_redirect.js b/middleware/host_redirect.js deleted file mode 100644 index 2e4fb21..0000000 --- a/middleware/host_redirect.js +++ /dev/null @@ -1,16 +0,0 @@ -(function() { - - module.exports = function(redirect_map) { - if (redirect_map == null) redirect_map = {}; - return function(req, res, next) { - var host; - host = req.header('Host'); - if (redirect_map[host]) { - return res.redirect(redirect_map[host]); - } else { - return next(); - } - }; - }; - -}).call(this); diff --git a/package.json b/package.json index 91ca912..a698597 100644 --- a/package.json +++ b/package.json @@ -11,5 +11,9 @@ "docco": "*", "mocha": "*", "should": "*" + }, + "engine": { + "node": "0.6.x", + "npm": "1.x.x" } } diff --git a/src/heartbit.coffee b/server.coffee similarity index 100% rename from src/heartbit.coffee rename to server.coffee diff --git a/test/host_redirect.test.js b/test/host_redirect.test.js deleted file mode 100644 index 3c74d72..0000000 --- a/test/host_redirect.test.js +++ /dev/null @@ -1,50 +0,0 @@ -(function() { - var host_redirect; - - require('should'); - - host_redirect = require('../middleware/host_redirect'); - - describe('host_redirect', function() { - var redirect_map, redirector; - redirect_map = { - 'www.foo.com': 'http://foo.com/', - 'img.foo.com': 'http://images.foo.com/' - }; - redirector = host_redirect(redirect_map); - describe('when request does not match any entry in map', function() { - return it('next() is called to pass on the request', function(done) { - var next, req, res; - req = { - header: function() { - return 'www.bar.com'; - } - }; - res = {}; - next = function() { - return done(); - }; - return redirector(req, res, next); - }); - }); - return describe('when request matches an entry in map', function() { - return it('req.redirect() is called with the new URL', function(done) { - var next, req, res; - req = { - header: function() { - return 'img.foo.com'; - } - }; - res = { - redirect: function(url) { - url.should.equal(redirect_map[req.header()]); - return done(); - } - }; - next = function() {}; - return redirector(req, res, next); - }); - }); - }); - -}).call(this); diff --git a/src/test/host_redirect.test.coffee b/test/middleware/host_redirect.test.coffee similarity index 92% rename from src/test/host_redirect.test.coffee rename to test/middleware/host_redirect.test.coffee index a2e60bd..2647554 100644 --- a/src/test/host_redirect.test.coffee +++ b/test/middleware/host_redirect.test.coffee @@ -1,6 +1,6 @@ require 'should' -host_redirect = require '../middleware/host_redirect' +host_redirect = require '../../middleware/host_redirect' describe 'host_redirect', ->