mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-10-29 10:06:13 +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 user = require('../src/user');
|
||||
var groups = require('../src/groups');
|
||||
var categories = require('../src/categories');
|
||||
|
||||
describe('socket.io', function () {
|
||||
|
||||
var io;
|
||||
var cid;
|
||||
var tid;
|
||||
var adminUid;
|
||||
|
||||
before(function (done) {
|
||||
async.series([
|
||||
async.apply(user.create, { username: 'admin', password: 'adminpwd' }),
|
||||
async.apply(user.create, { username: 'regular', password: 'regularpwd' })
|
||||
], function (err, uids) {
|
||||
async.apply(user.create, { username: 'regular', password: 'regularpwd' }),
|
||||
async.apply(categories.create, {
|
||||
name: 'Test Category',
|
||||
description: 'Test category created by testing script'
|
||||
})
|
||||
], function (err, data) {
|
||||
if (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) {
|
||||
db.emptydb(done);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user