@@ -6,14 +6,18 @@ var memdb = require('memdb')
6
6
7
7
test ( 'import json to jawn' , function ( t ) {
8
8
var jawn = freshJawn ( )
9
- importFromFile ( jawn , 'dummy.json' , { 'format' : 'json' } , verify )
9
+ var importStream = importFromFile ( jawn , 'dummy.json' , { 'format' : 'json' } )
10
10
var expected = [
11
11
'{"foo":"bar","name":"josie","age":"35"}' ,
12
12
'{"foo":"baz","name":"eloise","age":"71"}' ,
13
13
'{"foo":"baz","name":"francoise","age":"5"}'
14
14
]
15
- function verify ( err , feedId ) {
15
+
16
+ importStream . on ( 'finish' , verify )
17
+
18
+ function verify ( err ) {
16
19
if ( err ) { console . log ( err ) }
20
+ var feedId = importStream . writeStream . id
17
21
var rs = jawn . core . createReadStream ( feedId )
18
22
rs . on ( 'data' , function ( block ) {
19
23
t . same ( block . toString ( ) , expected . shift ( ) , 'block matches imported line' )
@@ -25,16 +29,20 @@ test('import json to jawn', function (t) {
25
29
26
30
test ( 'import csv to jawn' , function ( t ) {
27
31
var jawn = freshJawn ( )
28
- importFromFile ( jawn , 'sample.csv' , { 'format' : 'csv' } , verify )
32
+ importFromFile ( jawn , 'sample.csv' , { 'format' : 'csv' } )
33
+ var importStream = importFromFile ( jawn , 'sample.csv' , { 'format' : 'csv' } , verify )
29
34
var expected = [
30
35
'{"Type of Experience":"Writing software in any programming language","Little/No Experience":"1","Some Experience":"5","Very Familiar":"4"}' ,
31
36
'{"Type of Experience":"Frontend Web Development","Little/No Experience":"4","Some Experience":"3","Very Familiar":"3"}' ,
32
37
'{"Type of Experience":"Server-side (“backend”) Web Development","Little/No Experience":"4","Some Experience":"4","Very Familiar":"2"}' ,
33
38
'{"Type of Experience":"Using Git to track changes and share code (add, commit, push, pull)","Little/No Experience":"2","Some Experience":"5","Very Familiar":"3"}'
34
39
]
35
40
36
- function verify ( err , feedId ) {
41
+ importStream . on ( 'finish' , verify )
42
+
43
+ function verify ( err ) {
37
44
if ( err ) { console . log ( err ) }
45
+ var feedId = importStream . writeStream . id
38
46
var rs = jawn . core . createReadStream ( feedId )
39
47
rs . on ( 'data' , function ( block ) {
40
48
t . same ( block . toString ( ) , expected . shift ( ) , 'block matches imported line' )
@@ -54,8 +62,9 @@ function freshJawn () {
54
62
return new Jawn ( { db : memdb ( ) } )
55
63
}
56
64
57
- function importFromFile ( jawn , file , opts , callback ) {
58
- var importPipeline = jawn . createImportPipeline ( opts , callback )
65
+ function importFromFile ( jawn , file , opts ) {
66
+ var importPipeline = jawn . createImportPipeline ( opts )
59
67
var data = fs . createReadStream ( fixture ( file ) )
60
68
data . pipe ( importPipeline )
69
+ return importPipeline
61
70
}
0 commit comments