diff --git a/swh/loader/svn/svn.py b/swh/loader/svn/svn.py --- a/swh/loader/svn/svn.py +++ b/swh/loader/svn/svn.py @@ -90,7 +90,7 @@ # compute root directory path from the remote repository URL, required to # properly load the sub-tree of a repository mounted from a dump file repos_root_url = self.info(origin_url).repos_root_url - self.root_directory = origin_url.replace(repos_root_url, "", 1) + self.root_directory = origin_url.rstrip("/").replace(repos_root_url, "", 1) def __str__(self): return str( diff --git a/swh/loader/svn/tests/test_loader.py b/swh/loader/svn/tests/test_loader.py --- a/swh/loader/svn/tests/test_loader.py +++ b/swh/loader/svn/tests/test_loader.py @@ -1912,8 +1912,9 @@ ) for i in range(1, 4): - # load each project in the repository separately - origin_url = f"{repo_url}/project{i}" + # load each project in the repository separately and check behavior + # is the same if origin URL has a trailing slash or not + origin_url = f"{repo_url}/project{i}{'/' if i%2 else ''}" loader_params = { "storage": swh_storage,