mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-10-30 10:35:55 +01:00
socket.io topic.post/reply tests
This commit is contained in:
@@ -16,21 +16,31 @@ var db = require('./mocks/databasemock');
|
|||||||
var myXhr = require('./mocks/newXhr');
|
var myXhr = require('./mocks/newXhr');
|
||||||
var user = require('../src/user');
|
var user = require('../src/user');
|
||||||
var groups = require('../src/groups');
|
var groups = require('../src/groups');
|
||||||
|
var categories = require('../src/categories');
|
||||||
|
|
||||||
describe('socket.io', function () {
|
describe('socket.io', function () {
|
||||||
|
|
||||||
var io;
|
var io;
|
||||||
|
var cid;
|
||||||
|
var tid;
|
||||||
|
var adminUid;
|
||||||
|
|
||||||
before(function (done) {
|
before(function (done) {
|
||||||
async.series([
|
async.series([
|
||||||
async.apply(user.create, { username: 'admin', password: 'adminpwd' }),
|
async.apply(user.create, { username: 'admin', password: 'adminpwd' }),
|
||||||
async.apply(user.create, { username: 'regular', password: 'regularpwd' })
|
async.apply(user.create, { username: 'regular', password: 'regularpwd' }),
|
||||||
], function (err, uids) {
|
async.apply(categories.create, {
|
||||||
|
name: 'Test Category',
|
||||||
|
description: 'Test category created by testing script'
|
||||||
|
})
|
||||||
|
], function (err, data) {
|
||||||
if (err) {
|
if (err) {
|
||||||
return done(err);
|
return done(err);
|
||||||
}
|
}
|
||||||
|
adminUid = data[0];
|
||||||
|
cid = data[2].cid;
|
||||||
|
|
||||||
groups.join('administrators', uids[0], done);
|
groups.join('administrators', data[0], done);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -101,6 +111,27 @@ describe('socket.io', function () {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should post a topic', function (done) {
|
||||||
|
io.emit('topics.post', {title: 'test topic title', content: 'test topic main post content', uid: adminUid, cid: cid}, function (err, result) {
|
||||||
|
assert.ifError(err);
|
||||||
|
assert.equal(result.user.username, 'admin');
|
||||||
|
assert.equal(result.category.cid, cid);
|
||||||
|
assert.equal(result.mainPost.content, 'test topic main post content');
|
||||||
|
tid = result.tid;
|
||||||
|
done();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should reply to topic', function (done) {
|
||||||
|
io.emit('posts.reply', {tid: tid, uid: adminUid, content: 'test post content'}, function (err, result) {
|
||||||
|
assert.ifError(err);
|
||||||
|
assert.equal(result.uid, adminUid);
|
||||||
|
assert.equal(result.user.username, 'admin');
|
||||||
|
assert.equal(result.topic.tid, tid);
|
||||||
|
done();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
after(function (done) {
|
after(function (done) {
|
||||||
db.emptydb(done);
|
db.emptydb(done);
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user