Compare commits
No commits in common. "develop" and "master" have entirely different histories.
5 changed files with 5 additions and 30 deletions
|
@ -4,7 +4,8 @@ dist: xenial
|
||||||
addons:
|
addons:
|
||||||
sonarcloud:
|
sonarcloud:
|
||||||
organization: "ezhov-evgeny"
|
organization: "ezhov-evgeny"
|
||||||
token: f0f714f3bea6bd103e3eb82724ef3bb0d3b54d1d
|
token:
|
||||||
|
secure: f0f714f3bea6bd103e3eb82724ef3bb0d3b54d1d
|
||||||
|
|
||||||
services:
|
services:
|
||||||
- docker
|
- docker
|
||||||
|
|
|
@ -1,26 +0,0 @@
|
||||||
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()
|
|
|
@ -214,10 +214,9 @@ class Client(object):
|
||||||
response = self.session.request(
|
response = self.session.request(
|
||||||
method=self.requests[action],
|
method=self.requests[action],
|
||||||
url=self.get_url(path),
|
url=self.get_url(path),
|
||||||
auth=(self.webdav.login, self.webdav.password) if (not self.webdav.token and not self.session.auth) else None,
|
auth=(self.webdav.login, self.webdav.password) if not self.webdav.token else None,
|
||||||
headers=self.get_headers(action, headers_ext),
|
headers=self.get_headers(action, headers_ext),
|
||||||
timeout=self.timeout,
|
timeout=self.timeout,
|
||||||
cert=(self.webdav.cert_path, self.webdav.key_path) if (self.webdav.cert_path and self.webdav.key_path) else None,
|
|
||||||
data=data,
|
data=data,
|
||||||
stream=True,
|
stream=True,
|
||||||
verify=self.verify
|
verify=self.verify
|
||||||
|
|
|
@ -50,7 +50,6 @@ class WebDAVSettings(ConnectionSettings):
|
||||||
|
|
||||||
self.root = Urn(self.root).quote() if self.root else ''
|
self.root = Urn(self.root).quote() if self.root else ''
|
||||||
self.root = self.root.rstrip(Urn.separate)
|
self.root = self.root.rstrip(Urn.separate)
|
||||||
self.hostname = self.hostname.rstrip(Urn.separate)
|
|
||||||
|
|
||||||
def is_valid(self):
|
def is_valid(self):
|
||||||
if not self.hostname:
|
if not self.hostname:
|
||||||
|
|
|
@ -34,11 +34,13 @@ class Urn(object):
|
||||||
return self._path
|
return self._path
|
||||||
|
|
||||||
def filename(self):
|
def filename(self):
|
||||||
|
|
||||||
path_split = self._path.split(Urn.separate)
|
path_split = self._path.split(Urn.separate)
|
||||||
name = path_split[-2] + Urn.separate if path_split[-1] == '' else path_split[-1]
|
name = path_split[-2] + Urn.separate if path_split[-1] == '' else path_split[-1]
|
||||||
return unquote(name)
|
return unquote(name)
|
||||||
|
|
||||||
def parent(self):
|
def parent(self):
|
||||||
|
|
||||||
path_split = self._path.split(Urn.separate)
|
path_split = self._path.split(Urn.separate)
|
||||||
nesting_level = self.nesting_level()
|
nesting_level = self.nesting_level()
|
||||||
parent_path_split = path_split[:nesting_level]
|
parent_path_split = path_split[:nesting_level]
|
||||||
|
|
Loading…
Add table
Reference in a new issue