bpo-42090: zipfile.Path.joinpath now accepts multiple arguments (GH-22976)



Automerge-Triggered-By: GH:jaraco
diff --git a/Lib/test/test_zipfile.py b/Lib/test/test_zipfile.py
index b3c2421..7c09e2f 100644
--- a/Lib/test/test_zipfile.py
+++ b/Lib/test/test_zipfile.py
@@ -2966,6 +2966,12 @@ def test_joinpath(self, alpharep):
         assert e.read_text() == "content of e"
 
     @pass_alpharep
+    def test_joinpath_multiple(self, alpharep):
+        root = zipfile.Path(alpharep)
+        e = root.joinpath("b", "d", "e.txt")
+        assert e.read_text() == "content of e"
+
+    @pass_alpharep
     def test_traverse_truediv(self, alpharep):
         root = zipfile.Path(alpharep)
         a = root / "a.txt"
diff --git a/Lib/zipfile.py b/Lib/zipfile.py
index e1a50a3..0eed4ce 100644
--- a/Lib/zipfile.py
+++ b/Lib/zipfile.py
@@ -2379,8 +2379,8 @@ def __str__(self):
     def __repr__(self):
         return self.__repr.format(self=self)
 
-    def joinpath(self, add):
-        next = posixpath.join(self.at, add)
+    def joinpath(self, *other):
+        next = posixpath.join(self.at, *other)
         return self._next(self.root.resolve_dir(next))
 
     __truediv__ = joinpath