mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-05-07 03:27:01 +02:00
Merge remote-tracking branch 'origin/master' into flagging-refactor
This commit is contained in:
@@ -703,6 +703,91 @@ describe('Controllers', function () {
|
||||
});
|
||||
});
|
||||
|
||||
describe('account post pages', function () {
|
||||
var helpers = require('./helpers');
|
||||
var jar;
|
||||
before(function (done) {
|
||||
helpers.loginUser('foo', 'barbar', function (err, _jar) {
|
||||
assert.ifError(err);
|
||||
jar = _jar;
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should load /user/foo/posts', function (done) {
|
||||
request(nconf.get('url') + '/api/user/foo/posts', function (err, res, body) {
|
||||
assert.ifError(err);
|
||||
assert.equal(res.statusCode, 200);
|
||||
assert(body);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should 401 if not logged in', function (done) {
|
||||
request(nconf.get('url') + '/api/user/foo/bookmarks', function (err, res, body) {
|
||||
assert.ifError(err);
|
||||
assert.equal(res.statusCode, 401);
|
||||
assert(body);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should load /user/foo/bookmarks', function (done) {
|
||||
request(nconf.get('url') + '/api/user/foo/bookmarks', {jar: jar}, function (err, res, body) {
|
||||
assert.ifError(err);
|
||||
assert.equal(res.statusCode, 200);
|
||||
assert(body);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should load /user/foo/upvoted', function (done) {
|
||||
request(nconf.get('url') + '/api/user/foo/upvoted', {jar: jar}, function (err, res, body) {
|
||||
assert.ifError(err);
|
||||
assert.equal(res.statusCode, 200);
|
||||
assert(body);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should load /user/foo/downvoted', function (done) {
|
||||
request(nconf.get('url') + '/api/user/foo/downvoted', {jar: jar}, function (err, res, body) {
|
||||
assert.ifError(err);
|
||||
assert.equal(res.statusCode, 200);
|
||||
assert(body);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should load /user/foo/best', function (done) {
|
||||
request(nconf.get('url') + '/api/user/foo/best', function (err, res, body) {
|
||||
assert.ifError(err);
|
||||
assert.equal(res.statusCode, 200);
|
||||
assert(body);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should load /user/foo/watched', function (done) {
|
||||
request(nconf.get('url') + '/api/user/foo/watched', {jar: jar}, function (err, res, body) {
|
||||
assert.ifError(err);
|
||||
assert.equal(res.statusCode, 200);
|
||||
assert(body);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should load /user/foo/topics', function (done) {
|
||||
request(nconf.get('url') + '/api/user/foo/topics', function (err, res, body) {
|
||||
assert.ifError(err);
|
||||
assert.equal(res.statusCode, 200);
|
||||
assert(body);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
after(function (done) {
|
||||
var analytics = require('../src/analytics');
|
||||
analytics.writeData(function (err) {
|
||||
|
||||
@@ -93,14 +93,68 @@ describe('Groups', function () {
|
||||
});
|
||||
|
||||
describe('.search()', function () {
|
||||
var socketGroups = require('../src/socket.io/groups');
|
||||
|
||||
it('should return the groups when search query is empty', function (done) {
|
||||
socketGroups.search({uid: adminUid}, {query: ''}, function (err, groups) {
|
||||
assert.ifError(err);
|
||||
assert.equal(3, groups.length);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should return the "Test" group when searched for', function (done) {
|
||||
Groups.search('test', {}, function (err, groups) {
|
||||
socketGroups.search({uid: adminUid}, {query: 'test'}, function (err, groups) {
|
||||
assert.ifError(err);
|
||||
assert.equal(1, groups.length);
|
||||
assert.strictEqual('Test', groups[0].name);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should return the "Test" group when searched for and sort by member count', function (done) {
|
||||
Groups.search('test', {filterHidden: true, sort: 'count'}, function (err, groups) {
|
||||
assert.ifError(err);
|
||||
assert.equal(1, groups.length);
|
||||
assert.strictEqual('Test', groups[0].name);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should return the "Test" group when searched for and sort by creation time', function (done) {
|
||||
Groups.search('test', {filterHidden: true, sort: 'date'}, function (err, groups) {
|
||||
assert.ifError(err);
|
||||
assert.equal(1, groups.length);
|
||||
assert.strictEqual('Test', groups[0].name);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should return all users if no query', function (done) {
|
||||
User.create({
|
||||
username: 'newuser',
|
||||
email: 'newuser@b.com'
|
||||
}, function (err, uid) {
|
||||
assert.ifError(err);
|
||||
Groups.join('Test', uid, function (err) {
|
||||
assert.ifError(err);
|
||||
socketGroups.searchMembers({uid: adminUid}, {groupName: 'Test', query: ''}, function (err, data) {
|
||||
assert.ifError(err);
|
||||
assert.equal(data.users.length, 2);
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
it('should search group members', function (done) {
|
||||
socketGroups.searchMembers({uid: adminUid}, {groupName: 'Test', query: 'test'}, function (err, data) {
|
||||
assert.ifError(err);
|
||||
assert.strictEqual('testuser', data.users[0].username);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
describe('.isMember()', function () {
|
||||
@@ -184,6 +238,20 @@ describe('Groups', function () {
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should fail to create group if slug is empty', function (done) {
|
||||
Groups.create({name: '>>>>'}, function (err) {
|
||||
assert.equal(err.message, '[[error:invalid-group-name]]');
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should fail if group name is invalid', function (done) {
|
||||
Groups.create({name: 'not/valid'}, function (err) {
|
||||
assert.equal(err.message, '[[error:invalid-group-name]]');
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('.hide()', function () {
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
var assert = require('assert');
|
||||
var path = require('path');
|
||||
var nconf = require('nconf');
|
||||
var request = require('request');
|
||||
|
||||
var db = require('./mocks/databasemock');
|
||||
var plugins = require('../src/plugins');
|
||||
@@ -149,6 +150,35 @@ describe('Plugins', function () {
|
||||
});
|
||||
});
|
||||
|
||||
describe('static assets', function () {
|
||||
it('should 404 if resource does not exist', function (done) {
|
||||
request.get(nconf.get('url') + '/plugins/doesnotexist/should404.tpl', function (err, res, body) {
|
||||
assert.ifError(err);
|
||||
assert.equal(res.statusCode, 404);
|
||||
assert(body);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should 404 if resource does not exist', function (done) {
|
||||
request.get(nconf.get('url') + '/plugins/nodebb-plugin-dbsearch/dbsearch/templates/admin/plugins/should404.tpl', function (err, res, body) {
|
||||
assert.ifError(err);
|
||||
assert.equal(res.statusCode, 404);
|
||||
assert(body);
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should get resource', function (done) {
|
||||
request.get(nconf.get('url') + '/plugins/nodebb-plugin-dbsearch/dbsearch/templates/admin/plugins/dbsearch.tpl', function (err, res, body) {
|
||||
assert.ifError(err);
|
||||
assert.equal(res.statusCode, 200);
|
||||
assert(body);
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user