From 2cae0bc616a655ac8f0dc4570da8f0e79b8548df Mon Sep 17 00:00:00 2001 From: Jakub Sztandera Date: Mon, 1 Aug 2016 13:02:14 +0100 Subject: [PATCH 1/3] daemon: ipfs daemon --offline --mount should fail with nice message ipfs daemon --offline; ipfs mount; fails. This uniforms this behaviour. License: MIT Signed-off-by: Jakub Sztandera --- cmd/ipfs/daemon.go | 6 ++++++ test/sharness/t0600-issues-and-regressions-online.sh | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/cmd/ipfs/daemon.go b/cmd/ipfs/daemon.go index 24e42093c..f54ea45e9 100644 --- a/cmd/ipfs/daemon.go +++ b/cmd/ipfs/daemon.go @@ -1,6 +1,7 @@ package main import ( + "errors" _ "expvar" "fmt" "net" @@ -338,6 +339,11 @@ func daemonFunc(req cmds.Request, res cmds.Response) { res.SetError(err, cmds.ErrNormal) return } + if mount && offline { + res.SetError(errors.New("mount is not supported in offline mode"), + cmds.ErrClient) + return + } if mount { if err := mountFuse(req); err != nil { res.SetError(err, cmds.ErrNormal) diff --git a/test/sharness/t0600-issues-and-regressions-online.sh b/test/sharness/t0600-issues-and-regressions-online.sh index e899060bb..2b17f4ee9 100755 --- a/test/sharness/t0600-issues-and-regressions-online.sh +++ b/test/sharness/t0600-issues-and-regressions-online.sh @@ -29,5 +29,10 @@ test_expect_success "no panic traces on daemon" ' test_kill_ipfs_daemon +test_expect_success "ipfs daemon --offline --mount fails - #2995" ' + (test_must_fail ipfs daemon --offline --mount 2>daemon_err) && + grep "mount is not supported in offline mode" daemon_err +' + test_done From 8273b0f49372a8353abc8b8376f93c03beee3d0d Mon Sep 17 00:00:00 2001 From: Jakub Sztandera Date: Mon, 1 Aug 2016 13:03:49 +0100 Subject: [PATCH 2/3] sharness: fix improper use of test_expect_failure License: MIT Signed-off-by: Jakub Sztandera --- test/sharness/t0600-issues-and-regressions-online.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/sharness/t0600-issues-and-regressions-online.sh b/test/sharness/t0600-issues-and-regressions-online.sh index 2b17f4ee9..322daf36a 100755 --- a/test/sharness/t0600-issues-and-regressions-online.sh +++ b/test/sharness/t0600-issues-and-regressions-online.sh @@ -24,7 +24,7 @@ test_expect_success "args expecting stdin dont crash when not given" ' ' test_expect_success "no panic traces on daemon" ' - test_expect_failure grep "nil pointer dereference" daemon_err + test_must_fail grep "nil pointer dereference" daemon_err ' test_kill_ipfs_daemon From a42302443b315d5eee5828ab6b1c540f0ef8565e Mon Sep 17 00:00:00 2001 From: Jakub Sztandera Date: Mon, 1 Aug 2016 16:39:41 +0100 Subject: [PATCH 3/3] cli: reword message about mount and offline License: MIT Signed-off-by: Jakub Sztandera --- cmd/ipfs/daemon.go | 2 +- test/sharness/t0600-issues-and-regressions-online.sh | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/cmd/ipfs/daemon.go b/cmd/ipfs/daemon.go index f54ea45e9..5f8e959e5 100644 --- a/cmd/ipfs/daemon.go +++ b/cmd/ipfs/daemon.go @@ -340,7 +340,7 @@ func daemonFunc(req cmds.Request, res cmds.Response) { return } if mount && offline { - res.SetError(errors.New("mount is not supported in offline mode"), + res.SetError(errors.New("mount is not currently supported in offline mode"), cmds.ErrClient) return } diff --git a/test/sharness/t0600-issues-and-regressions-online.sh b/test/sharness/t0600-issues-and-regressions-online.sh index 322daf36a..ca95514b8 100755 --- a/test/sharness/t0600-issues-and-regressions-online.sh +++ b/test/sharness/t0600-issues-and-regressions-online.sh @@ -30,8 +30,8 @@ test_expect_success "no panic traces on daemon" ' test_kill_ipfs_daemon test_expect_success "ipfs daemon --offline --mount fails - #2995" ' - (test_must_fail ipfs daemon --offline --mount 2>daemon_err) && - grep "mount is not supported in offline mode" daemon_err + test_expect_code 1 ipfs daemon --offline --mount 2>daemon_err && + grep "mount is not currently supported in offline mode" daemon_err ' test_done