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:
 | 
			
		||||
  sonarcloud:
 | 
			
		||||
    organization: "ezhov-evgeny"
 | 
			
		||||
    token: f0f714f3bea6bd103e3eb82724ef3bb0d3b54d1d
 | 
			
		||||
    token:
 | 
			
		||||
      secure: f0f714f3bea6bd103e3eb82724ef3bb0d3b54d1d
 | 
			
		||||
 | 
			
		||||
services:
 | 
			
		||||
  - 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(
 | 
			
		||||
            method=self.requests[action],
 | 
			
		||||
            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),
 | 
			
		||||
            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,
 | 
			
		||||
            stream=True,
 | 
			
		||||
            verify=self.verify
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -50,7 +50,6 @@ 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,11 +34,13 @@ 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