it('Create', () => co(function * () { let server = yield apemanApi({ port, configuration: { $api: { pingPong: { ping () { let { lang } = this return 'pong:' + lang } }, $middlewares: [ create(loc, {}) ], $pathname: '/api/rpc' } } }) assert(server) let agent = superagent() let client = apemanApiClient(`${baseUrl}/api/rpc`, { agent }) assert.ok(client) { let pingPong = yield client.connect('pingPong') let pong = yield pingPong.ping() assert.equal(pong, 'pong:en') } { agent.set('accept-language', 'ja') let pingPong = yield client.connect('pingPong') let pong = yield pingPong.ping() assert.equal(pong, 'pong:ja') } yield asleep(300) yield server.close() }))
/*jslint node: true */ /*global describe, before, beforeEach, it*/ 'use strict'; var _ = require('lodash'); var expect = require('expect.js'); var async = require('async'); var superagentDefaults = require('superagent-defaults'); var request = superagentDefaults(); var conf = require('nconf'); conf.argv().env().file({file: __dirname + '../config.json'}).defaults(); conf.set('port','1337'); // Override normal ENV values with nconf ENV values (ENV values are used the same way without nconf) // FIXME can't get nconf file above to load... process.env.BASE_URL = conf.get("BASE_URL"); process.env.FACEBOOK_KEY = conf.get("FACEBOOK_KEY"); process.env.FACEBOOK_SECRET = conf.get("FACEBOOK_SECRET"); process.env.NODE_DB_URI = 'mongodb://localhost/habitrpg'; var User = require('../src/models/user').model; var Group = require('../src/models/group').model; var Challenge = require('../src/models/challenge').model; var app = require('../src/server'); var shared = require('habitrpg-shared'); // ###### Helpers & Variables ###### var model, uuid, taskPath,
* 2. From that commit fetch the file_tree at the time that commit was made * 3. Grab the package.json blob from the tree, and convert it into json and grab the version * 4. Repeat steps 1-3 but with the new commit * 5. Compare the version from step 3 and from step 4 if they are different submit a new release * */ var Q = require('q') , context = require('superagent-defaults') , envs = require('envs') , api = envs("GITHUB_URL") , GITHUB_LOGIN = envs("GITHUB_LOGIN") , GITHUB_PASSWORD = envs("GITHUB_PASSWORD"); var superagent = context() .on('request', function(request){ request .set('Accept', 'application/json') .set('User-Agent', 'curl/7.24.0 (x86_64-apple-darwin12.0) libcurl/7.24.0 OpenSSL/0.9.8r zlib/1.2.5') .set('Content-Type', 'application/json') .auth(GITHUB_LOGIN, GITHUB_PASSWORD); }); module.exports = function(app) { app.post("/version-check", function(req, res) { res.send(202); var payload = JSON.parse(req.body.payload); if (typeof payload === 'undefined') { return console.log("Invalid Payload"); }
oecloud.emit('test-start'); }); var chalk = require('chalk'); var chai = require('chai'); var async = require('async'); chai.use(require('chai-things')); chai.use(require('chai-datetime')); var expect = chai.expect; var app = oecloud; var defaults = require('superagent-defaults'); var supertest = require('supertest'); var api = defaults(supertest(app)); var basePath = app.get('restApiRoot'); var defaultContext = {}; function getContext(usr, roles, group) { return { ctx: { username: usr, remoteUser: usr, roles: roles, group: group } }; }
function fsSuperagent(config, addlRequestHandler) { var user = config.user || {} , cookies = config.cookies || {} , headers = config.headers || {}; return superagent().on('request', function(request) { var reqId = headers['x-request-id'] , sessId = user.sessionId || cookies.fssessionid , info = url.parse(request.url) , addToLogs = {} , endHandler; // TODO: Add centralized metric logging (BEGIN); request.set('accept', 'application/json'); request.set('X-Requested-With','XMLHttpRequest'); // so that express sets req.xhr = true. // Do we want a default timeout on the client? // request.timeout(20000); if (reqId) request.set('x-request-id', reqId); if (sessId) request.set('authorization', 'Bearer ' + sessId); request.setLocale = function(locale) { locale = (locale || headers['accept-language'] || 'en').substr(0,2); request.query({ 'locale' : locale }); return request; }; request.setSessionId = function(sessionName) { var query = {}; query[sessionName] = sessId; request.query(query); return request; }; request.addErrorHandler = function(handler) { request.on('error', handler); return request; }; request.addLog = function(name, value) { if (typeof name === 'string' && typeof value === 'string') { addToLogs[name] = value; } if (typeof name === 'object') { for (var key in name) { if (name.hasOwnProperty(key)) { addToLogs[key] = name[key]; } } } return request; }; request.handleEnd = function(handler) { if (typeof handler === 'function') { endHandler = handler; } }; if (addlRequestHandler) { addlRequestHandler(request); } // We have to overwrite the request.end to fix the error handling problems request._end = request.end; request.end = function(cb) { function doCb() { if(typeof endHandler === 'function') { return endHandler(cb, arguments); } cb.apply(null, arguments); } // Default to no error callback var okCB = function(response) { doCb(response); }; if (cb.length === 2) { // 200 callback requires empty first param okCB = function(response) { doCb(null, response); }; // Bind the error callback for errors request.addErrorHandler(doCb); } request._end(function(response) { // TODO: Add centralized metric logging (FINISHED); okCB(response); }); }; }); }