core/node_modules/c9/rest_client_test.js
2016-06-26 13:53:19 +02:00

55 lines
1.5 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env node
/*global describe it before after beforeEach afterEach */
"use strict";
"use server";
"use mocha";
require("c9/inline-mocha")(module);
require("amd-loader");
var assert = require("assert");
var http = require("http");
var findFreePort = require("netutil").findFreePort;
var RestClient = require("./rest_client");
describe(__filename, function() {
var port;
var MIN_API_PORT = 18500;
var MAX_API_PORT = MIN_API_PORT + 1000;
beforeEach(function(next) {
findFreePort(MIN_API_PORT, MAX_API_PORT, 'localhost', function(err, _port) {
port = _port;
next(err);
});
});
it("should send correct content length", function(next) {
var server = http.createServer(function(req, res) {
var body = "";
req.on("data", function(d) {
body += d;
});
req.on("end", function() {
JSON.parse(body);
res.end("OK");
});
});
server.listen(port, function() {
var client = new RestClient("localhost", port, {});
// send body with "strange" unicode character
var body = {"cloneFromScm":"https://github.com/saasbook/ruby­-calisthenics"};
client.request("POST", "/", body, function(err, res) {
assert(!err, err);
assert.equal(res, "OK");
server.close(next);
});
});
});
});