orchestrate
Version:
Orchestrate is a database service. It is a simple REST API that is optimized for queries. Orchestrate combines full-text search, graph, time-series, and key/value.
48 lines (43 loc) • 1.3 kB
JavaScript
// Copyright 2014 Orchestrate, Inc.
/**
* @fileoverview Test misc methods
*/
// Module Dependencies.
var assert = require('assert');
var db = require('./creds')();
var Q = require('kew');
var util = require('util');
var url = require('url');
function assertUrlsEqual(a, b) {
var aUrl = url.parse(a);
var bUrl = url.parse(b);
assert.equal(aUrl.hostname, bUrl.hostname);
assert.equal(aUrl.port, bUrl.port);
assert.equal(aUrl.hash, bUrl.hash);
var aUrlQueryParts = aUrl.query.split("&");
var bUrlQueryParts = bUrl.query.split("&");
assert.equal(aUrlQueryParts.length, bUrlQueryParts.length);
aUrlQueryParts.sort();
bUrlQueryParts.sort();
for (var i = 0; i < aUrlQueryParts.length; i++) {
assert.equal(aUrlQueryParts[i], bUrlQueryParts[i]);
}
}
suite('Misc', function () {
test('Service ping', function() {
return db.ping()
.then(function (res) {
assert.equal(200, res.statusCode);
var db2 = require('../lib-cov/client')("badtoken");
return db2.ping();
})
.then(function(res) {
return Q.reject("Expected badtoken ping to fail");
})
.fail(function (res) {
assert.equal(401, res.statusCode);
return Q.resolve(res);
});
});
});
module.exports.assertUrlsEqual = assertUrlsEqual;