#!/bin/sh # # Copyright (c) 2015 Henry Bubert # MIT Licensed; see the LICENSE file in this repository. # test_description="Test object command" . lib/test-lib.sh test_init_ipfs test_expect_success "'ipfs add testData' succeeds" ' printf "Hello Mars" >expected_in && ipfs add expected_in >actual_Addout ' test_expect_success "'ipfs add testData' output looks good" ' HASH="QmWkHFpYBZ9mpPRreRbMhhYWXfUhBAue3JkbbpFqwowSRb" && echo "added $HASH expected_in" >expected_Addout && test_cmp expected_Addout actual_Addout ' test_expect_success "'ipfs object get' succeeds" ' ipfs object get $HASH >actual_getOut ' test_expect_success "'ipfs object get' output looks good" ' test_cmp ../t0051-object-data/expected_getOut actual_getOut ' test_expect_success "'ipfs object stat' succeeds" ' ipfs object stat $HASH >actual_stat ' test_expect_success "'ipfs object get' output looks good" ' echo "NumLinks: 0" >> expected_stat && echo "BlockSize: 18" >> expected_stat && echo "LinksSize: 2" >> expected_stat && echo "DataSize: 16" >> expected_stat && echo "CumulativeSize: 18" >> expected_stat && test_cmp expected_stat actual_stat ' test_expect_success "'ipfs object put file.json' succeeds" ' ipfs object put ../t0051-object-data/testPut.json > actual_putOut ' test_expect_success "'ipfs object put file.json' output looks good" ' HASH="QmUTSAdDi2xsNkDtLqjFgQDMEn5di3Ab9eqbrt4gaiNbUD" && printf "added $HASH" > expected_putOut && test_cmp expected_putOut actual_putOut ' test_expect_success "'ipfs object put file.pb' succeeds" ' ipfs object put --inputenc=protobuf ../t0051-object-data/testPut.pb > actual_putOut ' test_expect_success "'ipfs object put file.pb' output looks good" ' HASH="QmUTSAdDi2xsNkDtLqjFgQDMEn5di3Ab9eqbrt4gaiNbUD" && printf "added $HASH" > expected_putOut && test_cmp expected_putOut actual_putOut ' test_expect_success "'ipfs object put' from stdin succeeds" ' cat ../t0051-object-data/testPut.json | ipfs object put > actual_putStdinOut ' test_expect_success "'ipfs object put' from stdin output looks good" ' HASH="QmUTSAdDi2xsNkDtLqjFgQDMEn5di3Ab9eqbrt4gaiNbUD" && printf "added $HASH" > expected_putStdinOut && test_cmp expected_putStdinOut actual_putStdinOut ' test_expect_success "'ipfs object put' from stdin (pb) succeeds" ' cat ../t0051-object-data/testPut.pb | ipfs object put --inputenc=protobuf > actual_putPbStdinOut ' test_expect_success "'ipfs object put' from stdin (pb) output looks good" ' HASH="QmUTSAdDi2xsNkDtLqjFgQDMEn5di3Ab9eqbrt4gaiNbUD" && printf "added $HASH" > expected_putStdinOut && test_cmp expected_putStdinOut actual_putPbStdinOut ' test_expect_success "'ipfs object put broken.json' should fail" ' test_expect_code 1 ipfs object put ../t0051-object-data/brokenPut.json 2>actual_putBrokenErr >actual_putBroken ' test_expect_success "'ipfs object put broken.hjson' output looks good" ' touch expected_putBroken && printf "Error: no data or links in this node\n" > expected_putBrokenErr && test_cmp expected_putBroken actual_putBroken && test_cmp expected_putBrokenErr actual_putBrokenErr ' test_done