add tests for templates

This commit is contained in:
TJ Holowaychuk 2013-12-08 10:57:51 -08:00
parent f3c4fbd7d2
commit d257782725
4 changed files with 44 additions and 1 deletions

View File

@ -12,7 +12,9 @@
"save-to": "~1.0.0",
"raw-body": "~1.1.1",
"co-fs": "~1.1.1",
"co-body": "0.0.1"
"co-body": "0.0.1",
"co-views": "~0.1.0",
"ejs": "~0.8.5"
},
"devDependencies": {
"co": "*",

28
templates/index.js Normal file
View File

@ -0,0 +1,28 @@
var views = require('co-views');
var koa = require('koa');
var app = module.exports = koa();
// setup views, appending .ejs
// when no extname is given to render()
var render = views(__dirname + '/views', { ext: 'ejs' });
// dummy data
var user = {
name: {
first: 'Tobi',
last: 'Holowaychuk'
},
species: 'ferret',
age: 3
};
// render
app.use(function *(){
this.body = yield render('user', { user: user });
})
if (!module.parent) app.listen(4000);

13
templates/test.js Normal file
View File

@ -0,0 +1,13 @@
var app = require('./');
var request = require('supertest').agent(app.listen());
describe('Templates', function(){
describe('GET /', function(){
it('should respond with a rendered view', function(done){
request
.get('/')
.expect(200)
.expect('<p>Tobi is a 3 year old ferret.</p>', done);
})
})
})