@@ -131,10 +131,65 @@ module.exports = (common) => {
131131
132132 describe ( '.provide' , ( ) => {
133133 it ( 'regular' , ( done ) => {
134- // TODO recheck this test, should it provide or not if block is not available? go-ipfs does provide.
134+ nodeC . files . add ( Buffer . from ( 'test' ) , ( err , res ) => {
135+ if ( err ) return done ( err )
136+
137+ nodeC . dht . provide ( new CID ( res [ 0 ] . hash ) , ( err ) => {
138+ expect ( err ) . to . not . exist ( )
139+ done ( )
140+ } )
141+ } )
142+ } )
143+
144+ it ( 'should not provide if block not found locally' , ( done ) => {
135145 const cid = new CID ( 'Qmd7qZS4T7xXtsNFdRoK1trfMs5zU94EpokQ9WFtxdPxsZ' )
136146
137- nodeC . dht . provide ( cid , done )
147+ nodeC . dht . provide ( cid , ( err ) => {
148+ expect ( err ) . to . exist ( )
149+ expect ( err . message ) . to . include ( 'not found locally' )
150+ done ( )
151+ } )
152+ } )
153+
154+ it ( 'allows multiple CIDs to be passed' , ( done ) => {
155+ nodeC . files . add ( [ Buffer . from ( 't0' ) , Buffer . from ( 't1' ) ] , ( err , res ) => {
156+ if ( err ) return done ( err )
157+
158+ nodeC . dht . provide ( [
159+ new CID ( res [ 0 ] . hash ) ,
160+ new CID ( res [ 1 ] . hash )
161+ ] , ( err ) => {
162+ expect ( err ) . to . not . exist ( )
163+ done ( )
164+ } )
165+ } )
166+ } )
167+
168+ it ( 'should provide a CIDv1' , ( done ) => {
169+ nodeC . files . add ( Buffer . from ( 'test' ) , { 'cid-version' : 1 } , ( err , res ) => {
170+ if ( err ) return done ( err )
171+
172+ const cid = new CID ( res [ 0 ] . hash )
173+
174+ nodeC . dht . provide ( cid , ( err ) => {
175+ expect ( err ) . to . not . exist ( )
176+ done ( )
177+ } )
178+ } )
179+ } )
180+
181+ it ( 'errors on non CID arg' , ( done ) => {
182+ nodeC . dht . provide ( { } , ( err ) => {
183+ expect ( err ) . to . exist ( )
184+ done ( )
185+ } )
186+ } )
187+
188+ it ( 'errors on array containing non CID arg' , ( done ) => {
189+ nodeC . dht . provide ( [ { } ] , ( err ) => {
190+ expect ( err ) . to . exist ( )
191+ done ( )
192+ } )
138193 } )
139194
140195 it . skip ( 'recursive' , ( ) => { } )
0 commit comments