This repository was archived by the owner on Mar 10, 2020. It is now read-only.
File tree 3 files changed +34
-17
lines changed
3 files changed +34
-17
lines changed Original file line number Diff line number Diff line change @@ -25,32 +25,40 @@ module.exports = (send) => {
25
25
res = res [ 0 ]
26
26
}
27
27
28
- // Type 2 keys
29
- if ( res . Type !== 2 ) {
28
+ // Type 2 keys (inconsistencies between go core and js core)
29
+ if ( res . Type !== 2 && res . type !== 2 ) {
30
30
const errMsg = `key was not found (type 2)`
31
31
32
32
return callback ( errcode ( new Error ( errMsg ) , 'ERR_KEY_TYPE_2_NOT_FOUND' ) )
33
33
}
34
34
35
- const id = res . Responses [ 0 ] . ID
36
- const addresses = res . Responses [ 0 ] . Addrs . map ( ( addr ) => {
37
- // inconsistencies js / go - go does not add `/ipfs/{id}` to the address
35
+ // inconsistencies between go core and js core
36
+ let id
37
+ let addrs
38
+
39
+ if ( res . Responses ) {
40
+ id = res . Responses [ 0 ] . ID
41
+ addrs = res . Responses [ 0 ] . Addrs
42
+ } else {
43
+ id = res . responses [ 0 ] . id
44
+ addrs = res . responses [ 0 ] . addrs
45
+ }
46
+
47
+ // inconsistencies js / go - go does not add `/ipfs/{id}` to the address
48
+ addrs = addrs . map ( ( addr ) => {
38
49
if ( addr . split ( '/ipfs/' ) > - 1 ) {
39
50
return addr
40
51
} else {
41
52
return `${ addr } /ipfs/${ id } `
42
53
}
43
54
} )
44
55
45
- const response = {
46
- ...res ,
47
- Responses : [ {
48
- ID : id ,
49
- Addrs : addresses
56
+ callback ( null , {
57
+ responses : [ {
58
+ id,
59
+ addrs
50
60
} ]
51
- }
52
-
53
- callback ( null , response )
61
+ } )
54
62
}
55
63
56
64
send ( {
Original file line number Diff line number Diff line change @@ -25,14 +25,23 @@ module.exports = (send) => {
25
25
res = res [ 0 ]
26
26
}
27
27
28
- // Type 4 keys
29
- if ( res . Type !== 4 ) {
28
+ // Type 4 keys (inconsistencies between go core and js core)
29
+ if ( res . Type !== 4 && res . type !== 4 ) {
30
30
const errMsg = `key was not found (type 4)`
31
31
32
32
return callback ( errcode ( new Error ( errMsg ) , 'ERR_KEY_TYPE_4_NOT_FOUND' ) )
33
33
}
34
34
35
- callback ( null , res )
35
+ // inconsistencies between go core and js core
36
+ const recResponses = res . Responses || res . responses
37
+
38
+ // providers array (handling inconsistencies)
39
+ const responses = recResponses . map ( ( r ) => ( {
40
+ id : r . ID || r . id ,
41
+ addrs : r . Addrs || r . addrs
42
+ } ) )
43
+
44
+ callback ( null , { responses } )
36
45
}
37
46
38
47
send ( {
Original file line number Diff line number Diff line change @@ -7,7 +7,7 @@ const CommonFactory = require('./utils/interface-common-factory')
7
7
const IPFSApi = require ( '../src' )
8
8
const isWindows = process . platform && process . platform === 'win32'
9
9
10
- describe . only ( 'interface-ipfs-core tests' , ( ) => {
10
+ describe ( 'interface-ipfs-core tests' , ( ) => {
11
11
const defaultCommonFactory = CommonFactory . create ( )
12
12
13
13
tests . bitswap ( defaultCommonFactory , {
You can’t perform that action at this time.
0 commit comments