bin/canned
#!/usr/bin/env node
var canned = require('../index')
, path = require('path')
, http = require('http')
, optimist = require('optimist')
, argv = optimist
.default('p', 3000)
.alias('p', 'port')
.describe('p', 'server port')
.default('w', 'any')
.alias('w', 'wildcard')
.describe('w', 'wildcard path name for ids')
.default('response_delay', 0)
.describe('response_delay', 'response resolve delay')
.default('relaxed_accept', false)
.describe('relaxed_accept', 'iterates through Accept header values from beginning to end')
.default('cors', true)
.describe('cors', 'disable cors support')
.default('headers', false)
.describe('headers', 'add custom headers allowed in cors requests')
.default('h', false)
.alias('h', 'help')
.describe('h', 'show the help')
.usage('Usage: $0 [dir]')
.argv
if (argv.h) {
optimist.showHelp()
return
}
var dir = ''
, port = argv.p
, relaxed_accept = argv.relaxed_accept
, cors = argv.cors
, cors_headers = argv.headers
, logger
, cannedDir
, wildcard = argv.wildcard
, response_delay = argv.response_delay
if (argv._.length === 1) dir = argv._[0] // use the passed directory
if (argv.q) {
logger = null // be quiet
} else {
logger = process.stdout
cannedDir = path.resolve(dir)
process.stdout.write('starting canned on port ' + port + ' for ' + cannedDir + '\n')
}
var can = canned(dir, {
logger: logger,
relaxed_accept: relaxed_accept,
cors: cors,
cors_headers: cors_headers,
wildcard: wildcard,
response_delay: response_delay
})
http.createServer(can).listen(port)