2
2
3
3
const chai = require ( 'chai' )
4
4
const dirtyChai = require ( 'dirty-chai' )
5
+ const series = require ( 'async/series' )
5
6
const expect = chai . expect
6
7
const statsTests = require ( './utils/stats' )
7
8
chai . use ( dirtyChai )
8
9
const CID = require ( 'cids' )
9
10
10
11
module . exports = ( common ) => {
11
12
describe ( '.bitswap online' , ( ) => {
12
- let ipfs
13
+ let ipfsA
14
+ let ipfsB
15
+ let ipfsBId
13
16
const key = 'QmUBdnXXPyoDFXj3Hj39dNJ5VkN3QFRskXxcGaYFBB8CNR'
14
17
15
18
before ( function ( done ) {
@@ -19,38 +22,64 @@ module.exports = (common) => {
19
22
20
23
common . setup ( ( err , factory ) => {
21
24
expect ( err ) . to . not . exist ( )
22
- factory . spawnNode ( ( err , node ) => {
23
- expect ( err ) . to . not . exist ( )
24
- ipfs = node
25
- ipfs . block . get ( new CID ( key ) )
26
- . then ( ( ) => { } )
27
- . catch ( ( ) => { } )
28
- setTimeout ( done , 250 )
29
- } )
25
+ series ( [
26
+ ( cb ) => factory . spawnNode ( ( err , node ) => {
27
+ expect ( err ) . to . not . exist ( )
28
+ ipfsA = node
29
+ cb ( )
30
+ } ) ,
31
+ ( cb ) => factory . spawnNode ( ( err , node ) => {
32
+ expect ( err ) . to . not . exist ( )
33
+ ipfsB = node
34
+ cb ( )
35
+ } ) ,
36
+ ( cb ) => {
37
+ ipfsB . id ( ( err , id ) => {
38
+ expect ( err ) . to . not . exist ( )
39
+ const ipfsBAddr = id . addresses [ 0 ]
40
+ ipfsBId = id . id
41
+ ipfsA . swarm . connect ( ipfsBAddr , cb )
42
+ } )
43
+ } ,
44
+ ( cb ) => {
45
+ ipfsB . block . get ( new CID ( key ) )
46
+ . then ( ( ) => { } )
47
+ . catch ( ( ) => { } )
48
+ setTimeout ( cb , 500 )
49
+ }
50
+ ] , done )
30
51
} )
31
52
} )
32
53
33
54
after ( ( done ) => common . teardown ( done ) )
34
55
35
56
it ( '.stat' , ( done ) => {
36
57
37
- ipfs . bitswap . stat ( ( err , stats ) => {
58
+ ipfsA . bitswap . stat ( ( err , stats ) => {
38
59
statsTests . expectIsBitswap ( err , stats )
39
60
done ( )
40
61
} )
41
62
} )
42
63
43
64
it ( '.wantlist' , ( done ) => {
44
- ipfs . bitswap . wantlist ( ( err , list ) => {
65
+ ipfsB . bitswap . wantlist ( ( err , list ) => {
66
+ expect ( err ) . to . not . exist ( )
67
+ expect ( list [ 0 ] . cid . toBaseEncodedString ( ) ) . to . equal ( key )
68
+ done ( )
69
+ } )
70
+ } )
71
+
72
+ it ( '.wantlist peerid' , ( done ) => {
73
+ ipfsA . bitswap . wantlist ( ipfsBId , ( err , list ) => {
45
74
expect ( err ) . to . not . exist ( )
46
75
expect ( list [ 0 ] . cid . toBaseEncodedString ( ) ) . to . equal ( key )
47
76
done ( )
48
77
} )
49
78
} )
50
79
51
80
it ( '.unwant' , ( done ) => {
52
- ipfs . bitswap . unwant ( new CID ( key ) , ( err ) => {
53
- ipfs . bitswap . wantlist ( ( err , list ) => {
81
+ ipfsA . bitswap . unwant ( new CID ( key ) , ( err ) => {
82
+ ipfsA . bitswap . wantlist ( ( err , list ) => {
54
83
expect ( list ) . to . be . empty ( )
55
84
done ( )
56
85
} )
0 commit comments