test('overflow with mixed', function(t) { t.plan(4); toInsert.push(data.link()); toInsert.push(data.link()); toInsert.push(data.link()); agent .post('/a/addManyLinks') .send({ category: category, links: toInsert }) .expect(200) .expect('Content-Type', 'application/json; charset=utf-8') .end(function(err, res) { t.error(err, 'insert 3/4 new links into frameSize of 1'); var data = res.body.data; t.equal(res.body.type, 'error', 'received error response'); db.links.count(function(err, count) { t.error(err, 'count links'); t.equal(count, CATEGORY_MAX, 'links at max again'); }); }); });
test('add mix links', function(t) { t.plan(4); toInsert.push(data.link()); toInsert.push(data.link()); toInsert.push(data.link()); toInsert.push(data.link()); toInsert.push(data.link()); agent .post('/a/addManyLinks') .send({ category: category, links: toInsert }) .expect(200) .expect('Content-Type', 'application/json; charset=utf-8') .end(function(err, res) { t.error(err, 'insert 15 mixed links'); var data = res.body.data; t.equal(res.body.type, 'success', 'received success response'); t.equal(data.valid, 15, 'found 15 valid links'); t.equal(data.inserted, 5, 'inserted 5 links'); }); });
test('add links individually', function(t) { t.plan(14); var newLink = data.link(category); var errLink = data.link(category); errLink.url = 'http://unsupported.com/v=3223423423'; agent .post('/a/addLink') .type('form') .send(errLink) .expect(200) .expect('Content-Type', 'application/json; charset=utf-8') .end(function(err, res) { t.error(err); t.ok(res.body, 'received response object'); t.ok(res.body.type === 'error', 'received error response'); }); agent .post('/a/addLink') .type('form') .send(newLink) .expect(200) .expect('Content-Type', 'application/json; charset=utf-8') .end(function(err, res) { t.error(err, 'add valid link'); var data = res.body.data; t.ok(res.body, 'received response object'); t.equal(res.body.type, 'success', 'received success response'); t.ok(data, 'data object returned'); t.ok(data.url === newLink.url, 'data contains inserted object'); }); agent .post('/a/addLink') .type('form') .send(newLink) .expect(200) .expect('Content-Type', 'application/json; charset=utf-8') .end(function(err, res) { t.error(err, 'adding same link'); var data = res.body.data; t.ok(res.body, 'received response object'); t.ok(res.body.type === 'error', 'received error response'); t.ok(data, 'data is returned'); t.ok(data.category, 'data contains category name'); t.ok(res.body.msg.indexOf('Link already exists') >= 0, 'existing link message sent'); }); });
test('test addLink bound', function(t) { t.plan(2); agent .post('/a/addLink') .send(data.link(category)) .expect(200) .expect('Content-Type', 'application/json; charset=utf-8') .end(function(err, res) { t.error(err, 'add another link'); var data = res.body.data; t.equal(res.body.type, 'error', 'received error response'); }); });