Fixed #49: Remove tailing slashes in web_hostname
This commit is contained in:
parent
eeaf66a278
commit
962a3f7d13
3 changed files with 27 additions and 2 deletions
26
tests/test_tailing_slash_client_it.py
Normal file
26
tests/test_tailing_slash_client_it.py
Normal file
|
@ -0,0 +1,26 @@
|
|||
import unittest
|
||||
|
||||
from tests.test_client_it import ClientTestCase
|
||||
|
||||
|
||||
class TailingSlashClientTestCase(ClientTestCase):
|
||||
options = {
|
||||
'webdav_hostname': 'http://localhost:8585/',
|
||||
'webdav_login': 'alice',
|
||||
'webdav_password': 'secret1234',
|
||||
'webdav_override_methods': {
|
||||
'check': 'GET'
|
||||
}
|
||||
}
|
||||
|
||||
def test_list_inner(self):
|
||||
self._prepare_for_downloading(True)
|
||||
file_list = self.client.list(self.remote_inner_path_dir)
|
||||
self.assertIsNotNone(file_list, 'List of files should not be None')
|
||||
|
||||
def test_hostname_no_tailing_slash(self):
|
||||
self.assertEqual('5', self.client.webdav.hostname[-1])
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
|
@ -50,6 +50,7 @@ class WebDAVSettings(ConnectionSettings):
|
|||
|
||||
self.root = Urn(self.root).quote() if self.root else ''
|
||||
self.root = self.root.rstrip(Urn.separate)
|
||||
self.hostname = self.hostname.rstrip(Urn.separate)
|
||||
|
||||
def is_valid(self):
|
||||
if not self.hostname:
|
||||
|
|
|
@ -34,13 +34,11 @@ class Urn(object):
|
|||
return self._path
|
||||
|
||||
def filename(self):
|
||||
|
||||
path_split = self._path.split(Urn.separate)
|
||||
name = path_split[-2] + Urn.separate if path_split[-1] == '' else path_split[-1]
|
||||
return unquote(name)
|
||||
|
||||
def parent(self):
|
||||
|
||||
path_split = self._path.split(Urn.separate)
|
||||
nesting_level = self.nesting_level()
|
||||
parent_path_split = path_split[:nesting_level]
|
||||
|
|
Loading…
Add table
Reference in a new issue