From 0d90279463b95278fc227ec4797abb5bdbe995c2 Mon Sep 17 00:00:00 2001 From: barisusakli Date: Tue, 25 Oct 2016 17:56:32 +0300 Subject: [PATCH] chat controller test --- .jshintrc | 1 + test/.jshintrc | 9 --------- test/helpers/index.js | 36 ++++++++++++++++++++++++++++++++++++ test/messaging.js | 17 +++++++++++++++-- 4 files changed, 52 insertions(+), 11 deletions(-) delete mode 100644 test/.jshintrc create mode 100644 test/helpers/index.js diff --git a/.jshintrc b/.jshintrc index 1981c254c5..3a7e093b8f 100644 --- a/.jshintrc +++ b/.jshintrc @@ -74,6 +74,7 @@ "worker" : false, // Web Workers "wsh" : false, // Windows Scripting Host "yui" : false, // Yahoo User Interface + "mocha": true, // Legacy "nomen" : false, // true: Prohibit dangling `_` in variables diff --git a/test/.jshintrc b/test/.jshintrc deleted file mode 100644 index 3bc176b7f6..0000000000 --- a/test/.jshintrc +++ /dev/null @@ -1,9 +0,0 @@ -{ - "strict" : false, // true: Requires all functions run in ES5 Strict Mode - - // Custom Globals - "globals" : { - "it": false, - "describe": false - } -} \ No newline at end of file diff --git a/test/helpers/index.js b/test/helpers/index.js new file mode 100644 index 0000000000..2cefcd4018 --- /dev/null +++ b/test/helpers/index.js @@ -0,0 +1,36 @@ +'use strict'; + +var request = require('request'); +var nconf = require('nconf'); + +var helpers = module.exports; + +helpers.loginUser = function (username, password, callback) { + var jar = request.jar(); + request({ + url: nconf.get('url') + '/api/config', + json: true, + jar: jar + }, function (err, response, body) { + if (err || response.statusCode !== 200) { + return callback(err || new Error('[[error:invalid-response]]')); + } + + request.post(nconf.get('url') + '/login', { + form: { + username: username, + password: password, + }, + json: true, + jar: jar, + headers: { + 'x-csrf-token': body.csrf_token + } + }, function (err, response) { + if (err || response.statusCode !== 200) { + return callback(err || new Error('[[error:invalid-response]]')); + } + callback(); + }); + }); +}; \ No newline at end of file diff --git a/test/messaging.js b/test/messaging.js index e82375db37..ecb65c9500 100644 --- a/test/messaging.js +++ b/test/messaging.js @@ -2,13 +2,15 @@ /*global require, before, after*/ var assert = require('assert'); -var db = require('./mocks/databasemock'); var async = require('async'); +var request = require('request'); +var nconf = require('nconf'); + +var db = require('./mocks/databasemock'); var User = require('../src/user'); var Groups = require('../src/groups'); var Messaging = require('../src/messaging'); - describe('Messaging Library', function () { var testUids; var fooUid; @@ -127,6 +129,17 @@ describe('Messaging Library', function () { }); }); + describe('controller', function () { + it('should 404 for guest', function (done) { + request(nconf.get('url') + '/user/baz/chats', function (err, response) { + assert.ifError(err); + assert.equal(response.statusCode, 404); + done(); + }); + }); + }); + + after(function (done) { db.emptydb(done); });