UNPKG

1.56 kBJavaScriptView Raw
1// Dependencies
2var nock = require('nock'),
3 solr = require('./../main'),
4 vows = require('vows'),
5 assert = require('assert'),
6 fs = require('fs'),
7 mocks = require('./mocks'),
8 JSONStream = require('JSONStream'),
9 EventEmitter = require('events').EventEmitter;
10
11// Load configuration file
12var config = JSON.parse(fs.readFileSync(__dirname + '/config.json'));
13
14/*
15if(config.mocked){
16 //nock.recorder.rec();
17 mocks.createAddStream(nock);
18}
19*/
20
21if(!config.mocked){
22
23// Suite Test
24
25var suite = vows.describe('Solr Client API: createAddStream');
26
27suite.addBatch({
28 'Adding documents through a stream' : {
29 topic : function(){
30 var promise = new EventEmitter();
31 var client = solr.createClient();
32 client.autoCommit = true;
33 var addStream = client.createAddStream();
34 var data = '';
35 addStream
36 .on('end',function(){
37 promise.emit('success',JSON.parse(data));
38 })
39 .on('data',function(buffer,encoding){
40 data += buffer.toString(encoding);
41 })
42 .on('error',function(err){
43 promise.emit('error',err);
44 });
45 var n = 50;
46 for(var i = 0; i < n; i++){
47 addStream.write({ id : i , title_t : 'title' + i, test_b : true});
48 }
49 addStream.end();
50 return promise;
51 },
52 'should works' : function(err,data){
53 assert.equal(data.responseHeader.status,0);
54 assert.isNull(err);
55 }
56 }
57}).export(module);
58
59}
\No newline at end of file