From 6d3854cfbd2a992fb82d021d90cc39b5a7d2f09f Mon Sep 17 00:00:00 2001 From: jbaeth Date: Mon, 6 Jul 2020 19:09:04 +0300 Subject: [PATCH] unit test fix --- newsfragments/2448.minor | 1 + src/allmydata/test/cli/test_list.py | 49 ++++++++++++++++++++--------- 2 files changed, 35 insertions(+), 15 deletions(-) create mode 100644 newsfragments/2448.minor diff --git a/newsfragments/2448.minor b/newsfragments/2448.minor new file mode 100644 index 0000000000..d406b2f7e1 --- /dev/null +++ b/newsfragments/2448.minor @@ -0,0 +1 @@ +Tahoe-LAFS ls commands now supports multiple arguments. \ No newline at end of file diff --git a/src/allmydata/test/cli/test_list.py b/src/allmydata/test/cli/test_list.py index a96c69f2b7..26eb6fc7a5 100644 --- a/src/allmydata/test/cli/test_list.py +++ b/src/allmydata/test/cli/test_list.py @@ -64,21 +64,6 @@ def _check2(args): self.failUnlessReallyEqual(err.strip(), u"missing: No such file or directory") self.failUnlessReallyEqual(out, "") d.addCallback(_check2) - d.addCallback(lambda ign: self.do_cli("ls", "%s" % "missing1", "%s" % good_arg)) - def _multiple_dirs_success(args): - (rc, out, err) = args - self.failUnlessEqual(rc, 0) - self.failUnlessReallyEqual(sorted(out.splitlines()), sorted([good_out])) - self.failUnlessReallyEqual(err.strip(), u"missing1: No such file or directory") - d.addCallback(_multiple_dirs_success) - d.addCallback(lambda ign: self.do_cli("ls", "missing1", "missing2")) - def _multiple_dirs_fail(args): - (rc, out, err) = args - self.failIfEqual(rc, 0) - self.failUnlessReallyEqual(err.strip(), u"missing1: No such file or directory\n" - u"missing2: No such file or directory") - self.failUnlessReallyEqual(out, "") - d.addCallback(_multiple_dirs_fail) d.addCallback(lambda ign: self.do_cli("ls", "1share")) def _check3(args): (rc, out, err) = args @@ -319,3 +304,37 @@ def _got_json(args): self.failUnlessIn('"format": "MDMF"', out) d.addCallback(_got_json) return d + + def test_list_multiple_dirs(self): + + self.basedir = "cli/List/list_multi" + self.set_up_grid() + c0 = self.g.clients[0] + small = "small" + good_arg = u"fileone".encode(get_io_encoding()) + good_out = u"fileone".encode(get_io_encoding()) + d = c0.create_dirnode() + def _stash_root_and_create_file(n): + self.rootnode = n + self.rooturi = n.get_uri() + return n.add_file(u"fileone", upload.Data(small, convergence="")) + d.addCallback(_stash_root_and_create_file) + d.addCallback(lambda ign: + self.do_cli("add-alias", "tahoe", self.rooturi)) + + d.addCallback(lambda ign: self.do_cli("ls", "missing1", good_arg)) + def _multiple_dirs_success(args): + (rc, out, err) = args + self.failUnlessEqual(rc, 0) + self.failUnlessReallyEqual(out.strip(), good_out) + self.failUnlessReallyEqual(err.strip(), u"missing1: No such file or directory") + d.addCallback(_multiple_dirs_success) + d.addCallback(lambda ign: self.do_cli("ls", "missing1", "missing2")) + def _multiple_dirs_fail(args): + (rc, out, err) = args + self.failIfEqual(rc, 0) + self.failUnlessReallyEqual(err.strip(), u"missing1: No such file or directory\n" + u"missing2: No such file or directory") + self.failUnlessReallyEqual(out, "") + d.addCallback(_multiple_dirs_fail) + return d