kazana-example
Version:
Kazana example app
64 lines (62 loc) • 1.73 kB
JavaScript
var test = require('../utils/test')
var request = require('request').defaults({
json: true
})
test('Basics', function (group, server, client) {
group.test('Frontend', function (t) {
return client
.init()
.url(server.info.uri)
.getTitle()
.then(function (title) {
t.is(title, 'Bookkeeping', 'correct window title is set')
})
.waitForExist('h1')
.getText('h1')
.then(function (text) {
t.is(text, 'Bookkeeping', 'correct title is set')
})
.end()
})
group.test('Account', function (s) {
s.test('Root', function (t) {
// /kazana/account/api does not exist yet
request(server.info.uri + '/kazana/account/api/session', function (error, response, body) {
t.error(error)
t.same(body, {
statusCode: 404,
error: 'Not Found'
})
t.end()
})
})
s.test('POST to session retrieves a bearer token', function (t) {
request({
method: 'POST',
url: server.info.uri + '/kazana/account/api/session',
body: {
name: 'kazana-admin@example.com',
password: server.settings.app.kazana.admin.password
}
}, function (error, response, body) {
t.error(error)
t.ok('bearerToken' in body)
t.end()
})
})
s.end()
})
group.test('Raw Data', function (t) {
// /kazana/account/api does not exist yet
request(server.info.uri + '/kazana/raw-data/api/submissions', function (error, response, body) {
t.error(error)
t.same(body, {
statusCode: 401,
error: 'Unauthorized',
message: 'User not authenticated'
})
t.end()
})
})
group.end()
})