3
3
4
4
const expect = require ( 'chai' ) . expect
5
5
const Block = require ( 'ipfs-block' )
6
+ const mh = require ( 'multihashes' )
6
7
const BlockService = require ( '../src' )
7
8
8
9
module . exports = ( repo ) => {
@@ -93,15 +94,15 @@ module.exports = (repo) => {
93
94
bs . getBlocks ( [ b1 . key , b2 . key , b3 . key ] , ( err , blocks ) => {
94
95
expect ( err ) . to . not . exist
95
96
expect ( Object . keys ( blocks ) ) . to . have . lengthOf ( 3 )
96
- expect ( blocks [ b1 . key ] ) . to . exist
97
- expect ( blocks [ b1 . key ] . err ) . to . not . exist
98
- expect ( blocks [ b1 . key ] . block . data ) . to . deep . equal ( b1 . data )
99
- expect ( blocks [ b2 . key ] ) . to . exist
100
- expect ( blocks [ b2 . key ] . err ) . to . not . exist
101
- expect ( blocks [ b2 . key ] . block . data ) . to . deep . equal ( b2 . data )
102
- expect ( blocks [ b3 . key ] ) . to . exist
103
- expect ( blocks [ b3 . key ] . err ) . to . not . exist
104
- expect ( blocks [ b3 . key ] . block . data ) . to . deep . equal ( b3 . data )
97
+ expect ( blocks [ mh . toB58String ( b1 . key ) ] ) . to . exist
98
+ expect ( blocks [ mh . toB58String ( b1 . key ) ] . error ) . to . not . exist
99
+ expect ( blocks [ mh . toB58String ( b1 . key ) ] . block . data ) . to . deep . equal ( b1 . data )
100
+ expect ( blocks [ mh . toB58String ( b2 . key ) ] ) . to . exist
101
+ expect ( blocks [ mh . toB58String ( b2 . key ) ] . error ) . to . not . exist
102
+ expect ( blocks [ mh . toB58String ( b2 . key ) ] . block . data ) . to . deep . equal ( b2 . data )
103
+ expect ( blocks [ mh . toB58String ( b3 . key ) ] ) . to . exist
104
+ expect ( blocks [ mh . toB58String ( b3 . key ) ] . error ) . to . not . exist
105
+ expect ( blocks [ mh . toB58String ( b3 . key ) ] . block . data ) . to . deep . equal ( b3 . data )
105
106
done ( )
106
107
} )
107
108
} )
@@ -118,15 +119,15 @@ module.exports = (repo) => {
118
119
bs . getBlocks ( [ b1 . key , b2 . key , b3 . key ] , ( err , blocks ) => {
119
120
expect ( err ) . to . not . exist
120
121
expect ( Object . keys ( blocks ) ) . to . have . lengthOf ( 3 )
121
- expect ( blocks [ b1 . key ] ) . to . exist
122
- expect ( blocks [ b1 . key ] . err ) . to . not . exist
123
- expect ( blocks [ b1 . key ] . block . data ) . to . deep . equal ( b1 . data )
124
- expect ( blocks [ b2 . key ] ) . to . exist
125
- expect ( blocks [ b2 . key ] . err ) . to . exist
126
- expect ( blocks [ b2 . key ] . block ) . to . not . exist
127
- expect ( blocks [ b3 . key ] ) . to . exist
128
- expect ( blocks [ b3 . key ] . err ) . to . not . exist
129
- expect ( blocks [ b3 . key ] . block . data ) . to . deep . equal ( b3 . data )
122
+ expect ( blocks [ mh . toB58String ( b1 . key ) ] ) . to . exist
123
+ expect ( blocks [ mh . toB58String ( b1 . key ) ] . error ) . to . not . exist
124
+ expect ( blocks [ mh . toB58String ( b1 . key ) ] . block . data ) . to . deep . equal ( b1 . data )
125
+ expect ( blocks [ mh . toB58String ( b2 . key ) ] ) . to . exist
126
+ expect ( blocks [ mh . toB58String ( b2 . key ) ] . error ) . to . exist
127
+ expect ( blocks [ mh . toB58String ( b2 . key ) ] . block ) . to . not . exist
128
+ expect ( blocks [ mh . toB58String ( b3 . key ) ] ) . to . exist
129
+ expect ( blocks [ mh . toB58String ( b3 . key ) ] . error ) . to . not . exist
130
+ expect ( blocks [ mh . toB58String ( b3 . key ) ] . block . data ) . to . deep . equal ( b3 . data )
130
131
done ( )
131
132
} )
132
133
} )
@@ -257,6 +258,28 @@ module.exports = (repo) => {
257
258
bs . goOnline ( bitswap )
258
259
bs . addBlock ( new Block ( 'secret sauce' ) , done )
259
260
} )
261
+
262
+ it ( 'getBlocks through bitswap' , ( done ) => {
263
+ const b1 = new Block ( 'secret sauce 1' )
264
+ const b2 = new Block ( 'secret sauce 2' )
265
+
266
+ const bitswap = {
267
+ getBlocks ( keys , cb ) {
268
+ cb ( {
269
+ [ mh . toB58String ( b1 . key ) ] : { block : b1 } ,
270
+ [ mh . toB58String ( b2 . key ) ] : { block : b2 }
271
+ } )
272
+ }
273
+ }
274
+
275
+ bs . goOnline ( bitswap )
276
+ bs . getBlocks ( [ b1 . key , b2 . key ] , ( err , results ) => {
277
+ expect ( err ) . to . not . exist
278
+ expect ( results [ mh . toB58String ( b1 . key ) ] . block ) . to . be . eql ( b1 )
279
+ expect ( results [ mh . toB58String ( b2 . key ) ] . block ) . to . be . eql ( b2 )
280
+ done ( )
281
+ } )
282
+ } )
260
283
} )
261
284
} )
262
285
}
0 commit comments