From aa55ab7af4352e3fe5f3e15061690e81ca7ac502 Mon Sep 17 00:00:00 2001 From: Jakub Sztandera Date: Wed, 27 Mar 2019 20:21:38 +0100 Subject: [PATCH] test: sharness tests for ipfs version deps License: MIT Signed-off-by: Jakub Sztandera --- core/commands/version.go | 6 ++++-- test/sharness/t0010-basic-commands.sh | 13 ++++++++++++- test/sharness/t0060-daemon.sh | 10 ++++++++++ 3 files changed, 26 insertions(+), 3 deletions(-) diff --git a/core/commands/version.go b/core/commands/version.go index 20d9fe8e4..291f5699f 100644 --- a/core/commands/version.go +++ b/core/commands/version.go @@ -96,6 +96,8 @@ type Dependency struct { Sum string } +const pkgVersionFmt = "%s@%s" + var depsVersionCommand = &cmds.Command{ Helptext: cmdkit.HelpText{ Tagline: "Shows information about dependencies used for build", @@ -114,7 +116,7 @@ Print out all dependencies and their versions.`, dep.Version = mod.Version dep.Sum = mod.Sum if repl := mod.Replace; repl != nil { - dep.ReplacedBy = fmt.Sprintf("%s@%s", repl.Path, repl.Version) + dep.ReplacedBy = fmt.Sprintf(pkgVersionFmt, repl.Path, repl.Version) } return } @@ -130,7 +132,7 @@ Print out all dependencies and their versions.`, }, Encoders: cmds.EncoderMap{ cmds.Text: cmds.MakeTypedEncoder(func(req *cmds.Request, w io.Writer, dep Dependency) error { - fmt.Fprintf(w, "%s@%s", dep.Path, dep.Version) + fmt.Fprintf(w, pkgVersionFmt, dep.Path, dep.Version) if dep.ReplacedBy != "" { fmt.Fprintf(w, " => %s", dep.ReplacedBy) } diff --git a/test/sharness/t0010-basic-commands.sh b/test/sharness/t0010-basic-commands.sh index d5f89af33..d483adfd7 100755 --- a/test/sharness/t0010-basic-commands.sh +++ b/test/sharness/t0010-basic-commands.sh @@ -41,6 +41,16 @@ test_expect_success "ipfs version --all has all required fields" ' grep "Golang version" version_all.txt ' +test_expect_success "ipfs version deps succeeds" ' + ipfs version deps >deps.txt +' + +test_expect_success "ipfs version deps output looks good" ' + head -1 deps.txt | grep "go-ipfs@(devel)" && + [[ $(tail -n +2 deps.txt | egrep -v -c "^[^ @]+@v[^ @]+( => [^ @]+@v[^ @]+)?$") -eq 0 ]] || + test_fsh cat deps.txt +' + test_expect_success "'ipfs commands' succeeds" ' ipfs commands >commands.txt ' @@ -83,6 +93,7 @@ test_expect_success "All commands accept --help" ' test_expect_failure "All ipfs root commands are mentioned in base helptext" ' echo 0 > fail + ipfs --help > help.txt cut -d" " -f 2 commands.txt | grep -v ipfs | sort -u | \ while read cmd do @@ -113,7 +124,7 @@ test_expect_success "All ipfs commands fail when passed a bad flag" ' echo 0 > fail while read -r cmd do - test_must_fail $cmd --badflag >/dev/null || + test_must_fail $cmd --badflag >/dev/null 2>&1 || { echo "$cmd exit with code 0 when passed --badflag"; echo 1 > fail; } done deps.txt +' + +test_expect_success "ipfs version deps output looks good" ' + head -1 deps.txt | grep "go-ipfs@(devel)" && + [[ $(tail -n +2 deps.txt | egrep -v -c "^[^ @]+@v[^ @]+( => [^ @]+@v[^ @]+)?$") -eq 0 ]] || + test_fsh cat deps.txt +' + test_expect_success "ipfs help succeeds" ' ipfs help >help.txt '