[svn r37500] postponing generalizing of host specifications for 0.9
--HG-- branch : trunk
This commit is contained in:
		
							parent
							
								
									ae11e91791
								
							
						
					
					
						commit
						20222ec57b
					
				|  | @ -1,37 +0,0 @@ | |||
| 
 | ||||
| class InvalidHostSpec(ValueError): | ||||
|     pass | ||||
| 
 | ||||
| def parsehostspec(spec): | ||||
|     parts = spec.split(":", 2) | ||||
|     if len(parts) < 2: | ||||
|         raise InvalidHostSpec(spec) | ||||
|     type = parts.pop(0) | ||||
|     if type == 'ssh': | ||||
|         sshaddress = parts.pop(0) | ||||
|         basedir = parts and ":".join(parts) or '' | ||||
|         return SpecSSH(sshaddress, basedir) | ||||
|     elif type == 'socket': | ||||
|         host = parts.pop(0) | ||||
|         if not parts: | ||||
|             raise InvalidHostSpec(spec) | ||||
|         remainder = parts.pop(0) | ||||
|         parts = remainder.split(":", 1) | ||||
|         port = int(parts.pop(0)) | ||||
|         basedir = parts and ":".join(parts) or '' | ||||
|         return SpecSocket(host, port, basedir) | ||||
|     else: | ||||
|         raise InvalidHostSpec(spec) | ||||
| 
 | ||||
| class SpecSSH(object): | ||||
|     def __init__(self, sshaddress, basedir): | ||||
|         self.sshaddress = sshaddress | ||||
|         self.basedir = basedir | ||||
|         self.host = sshaddress.split('@', 1)[-1] | ||||
|         | ||||
| class SpecSocket(object): | ||||
|     def __init__(self, host, port, basedir): | ||||
|         self.host = host | ||||
|         self.port = port | ||||
|         self.basedir = basedir  | ||||
|       | ||||
|  | @ -1,56 +0,0 @@ | |||
| """ | ||||
| 
 | ||||
| Testing Host setup and rsyncing operations.  | ||||
| 
 | ||||
| """ | ||||
| 
 | ||||
| import py | ||||
| from py.__.test.host import parsehostspec | ||||
| 
 | ||||
| def test_parse_hostspec_ssh(): | ||||
|     hostspec = parsehostspec("ssh:xyz@domain.net:directory") | ||||
|     assert hostspec.host == "domain.net" | ||||
|     assert hostspec.basedir == "directory" | ||||
|     assert hostspec.sshaddress == "xyz@domain.net" | ||||
| 
 | ||||
|     hostspec = parsehostspec("ssh:xyz@domain.net:direc:tory") | ||||
|     assert hostspec.host == "domain.net" | ||||
|     assert hostspec.basedir == "direc:tory" | ||||
|     assert hostspec.sshaddress == "xyz@domain.net" | ||||
| 
 | ||||
|     hostspec = parsehostspec("ssh:xyz@domain.net") | ||||
|     assert hostspec.host == "domain.net" | ||||
|     assert hostspec.basedir == "" | ||||
|     assert hostspec.sshaddress == "xyz@domain.net" | ||||
| 
 | ||||
|     hostspec = parsehostspec("ssh:domain.net:directory") | ||||
|     assert hostspec.host == "domain.net" | ||||
|     assert hostspec.basedir == "directory" | ||||
|     assert hostspec.sshaddress == "domain.net" | ||||
| 
 | ||||
|     hostspec = parsehostspec("ssh:domain.net:/tmp/hello") | ||||
|     assert hostspec.host == "domain.net" | ||||
|     assert hostspec.basedir == "/tmp/hello" | ||||
|     assert hostspec.sshaddress == "domain.net" | ||||
| 
 | ||||
| def test_parse_hostspec_socket(): | ||||
|     hostspec = parsehostspec("socket:domain.net:1234:directory") | ||||
|     assert hostspec.host == "domain.net" | ||||
|     assert hostspec.port == 1234 | ||||
|     assert hostspec.basedir == "directory"  | ||||
| 
 | ||||
|     hostspec = parsehostspec("socket:domain.net:1234") | ||||
|     assert hostspec.host == "domain.net" | ||||
|     assert hostspec.port == 1234 | ||||
|     assert hostspec.basedir == "" | ||||
|      | ||||
| def test_parse_hostspec_error(): | ||||
|     py.test.raises(ValueError, """ | ||||
|         parsehostspec('alksd:qweqwe') | ||||
|     """) | ||||
|     py.test.raises(ValueError, """ | ||||
|         parsehostspec('ssh') | ||||
|     """) | ||||
|     py.test.raises(ValueError, """ | ||||
|         parsehostspec('socket:qweqwe') | ||||
|     """) | ||||
		Loading…
	
		Reference in New Issue