@cryptotaxi247 / kubo / commits / cb611c887

allow for sub-object resolution in dag get

License: MIT Signed-off-by: Jeromy <jeromyj@gmail.com>

Jeromy committed Feb 13, 2017 at 19:15 UTC cb611c8873caf5ab5d3feb94b3776addbc74511a
4 files changed +27 -6
core/commands/dag/dag.go
+1 -1
@@ -10,8 +10,8 @@ import (
10 path "github.com/ipfs/go-ipfs/path"
11
12 cid "gx/ipfs/QmV5gPoRsjN1Gid3LMdNZTyfCtP2DsvqEbMAmz82RmmiGk/go-cid"
13 - ipldcbor "gx/ipfs/QmWcQMNruWC3wphK1L6zEcV4MZBJqfsNKSRFcuo4AsNk4k/go-ipld-cbor"
13 node "gx/ipfs/QmYDscK7dmdo2GZ9aumS8s5auUUAH5mR1jvj5pYhWusfK7/go-ipld-node"
14 + ipldcbor "gx/ipfs/QmdaC21UyoyN3t9QdapHZfsaUo3mqVf5p4CEuFaYVFqwap/go-ipld-cbor"
15 )
16
17 var DagCmd = &cmds.Command{
merkledag/merkledag.go
+1 -1
@@ -13,8 +13,8 @@ import (
13
14 logging "gx/ipfs/QmSpJByNKFX1sCsHBEp3R73FL4NF6FnQTEGyNAXHm2GS52/go-log"
15 cid "gx/ipfs/QmV5gPoRsjN1Gid3LMdNZTyfCtP2DsvqEbMAmz82RmmiGk/go-cid"
16 - ipldcbor "gx/ipfs/QmWcQMNruWC3wphK1L6zEcV4MZBJqfsNKSRFcuo4AsNk4k/go-ipld-cbor"
16 node "gx/ipfs/QmYDscK7dmdo2GZ9aumS8s5auUUAH5mR1jvj5pYhWusfK7/go-ipld-node"
17 + ipldcbor "gx/ipfs/QmdaC21UyoyN3t9QdapHZfsaUo3mqVf5p4CEuFaYVFqwap/go-ipld-cbor"
18 )
19
20 var log = logging.Logger("merkledag")
package.json
+2 -2
@@ -267,9 +267,9 @@
267 },
268 {
269 "author": "whyrusleeping",
270 - "hash": "QmWcQMNruWC3wphK1L6zEcV4MZBJqfsNKSRFcuo4AsNk4k",
270 + "hash": "QmdaC21UyoyN3t9QdapHZfsaUo3mqVf5p4CEuFaYVFqwap",
271 "name": "go-ipld-cbor",
272 - "version": "1.2.0"
272 + "version": "1.2.1"
273 },
274 {
275 "author": "lgierth",
test/sharness/t0053-dag.sh
+23 -2
@@ -22,7 +22,7 @@ test_expect_success "make a few test files" '
22 '
23
24 test_expect_success "make an ipld object in json" '
25 - printf "{\"hello\":\"world\",\"cats\":[{\"/\":\"%s\"},{\"water\":{\"/\":\"%s\"}}],\"magic\":{\"/\":\"%s\"}}" $HASH1 $HASH2 $HASH3 > ipld_object
25 + printf "{\"hello\":\"world\",\"cats\":[{\"/\":\"%s\"},{\"water\":{\"/\":\"%s\"}}],\"magic\":{\"/\":\"%s\"},\"sub\":{\"dict\":\"ionary\",\"beep\":[0,\"bop\"]}}" $HASH1 $HASH2 $HASH3 > ipld_object
26 '
27
28 test_dag_cmd() {
@@ -31,7 +31,7 @@ test_dag_cmd() {
31 '
32
33 test_expect_success "output looks correct" '
34 - EXPHASH="zdpuAzn7KZcQmKJvpEM1DgHXaybVj7mRP4ZMrkW94taYEuZHp"
34 + EXPHASH="zdpuAsXfkHapxohc8LtsCzYiAsy84ESqKRD8eWuY64tt9r2CE"
35 test $EXPHASH = $IPLDHASH
36 '
37
@@ -47,6 +47,27 @@ test_dag_cmd() {
47 test_cmp file3 out3
48 '
49
50 + test_expect_success "resolving sub-objects works" '
51 + ipfs dag get $IPLDHASH/hello > sub1 &&
52 + ipfs dag get $IPLDHASH/sub > sub2 &&
53 + ipfs dag get $IPLDHASH/sub/beep > sub3 &&
54 + ipfs dag get $IPLDHASH/sub/beep/0 > sub4 &&
55 + ipfs dag get $IPLDHASH/sub/beep/1 > sub5
56 + '
57 +
58 + test_expect_success "sub-objects look right" '
59 + echo "\"world\"" > sub1_exp &&
60 + test_cmp sub1_exp sub1 &&
61 + echo "{\"beep\":[0,\"bop\"],\"dict\":\"ionary\"}" > sub2_exp &&
62 + test_cmp sub2_exp sub2 &&
63 + echo "[0,\"bop\"]" > sub3_exp &&
64 + test_cmp sub3_exp sub3 &&
65 + echo "0" > sub4_exp &&
66 + test_cmp sub4_exp sub4 &&
67 + echo "\"bop\"" > sub5_exp &&
68 + test_cmp sub5_exp sub5
69 + '
70 +
71 test_expect_success "can pin cbor object" '
72 ipfs pin add $EXPHASH
73 '