def test_get_ssh_dir_with_ssh(self): """Testing FileSSHStorage.get_ssh_dir with ~/ssh""" sshdir = os.path.join(self.tempdir, 'ssh') os.mkdir(sshdir, 0o700) storage = FileSSHStorage() self.assertEqual(storage.get_ssh_dir(), sshdir)
def test_write_user_key_unsupported(self): """Testing FileSSHStorage.write_user_key with unsupported key type""" class FakeKey(object): pass storage = FileSSHStorage() self.assertRaises(UnsupportedSSHKeyError, lambda: storage.write_user_key(FakeKey()))
def test_get_ssh_dir_with_ssh_and_localsite(self): """Testing FileSSHStorage.get_ssh_dir with ~/ssh and localsite""" sshdir = os.path.join(self.tempdir, 'ssh') os.mkdir(sshdir, 0o700) sshdir = os.path.join(sshdir, 'site-1') storage = FileSSHStorage(namespace='site-1') self.assertEqual(storage.get_ssh_dir(), sshdir)
def test_replace_host_key_no_known_hosts(self): """Testing FileSSHStorage.replace_host_key with no known hosts file""" storage = FileSSHStorage() storage.replace_host_key('host1', self.key1, self.key2) filename = storage.get_host_keys_filename() with open(filename, 'r') as fp: lines = fp.readlines() self.assertEqual(len(lines), 1) self.assertEqual(lines[0], 'host1 ssh-dss %s\n' % self.key2_b64)
def test_add_host_key(self): """Testing FileSSHStorage.add_host_key""" storage = FileSSHStorage() storage.add_host_key('host1', self.key1) filename = storage.get_host_keys_filename() with open(filename, 'r') as fp: lines = fp.readlines() self.assertEqual(len(lines), 1) self.assertEqual(lines[0], 'host1 ssh-rsa %s\n' % self.key1_b64)
def test_read_host_keys(self): """Testing FileSSHStorage.read_host_keys""" storage = FileSSHStorage() storage.ensure_ssh_dir() line1 = 'host1 ssh-rsa %s' % self.key1_b64 line2 = 'host2 ssh-dss %s' % self.key2_b64 filename = storage.get_host_keys_filename() with open(filename, 'w') as fp: fp.write('%s\n' % line1) fp.write('\n') fp.write('# foo\n') fp.write('%s \n' % line2) lines = storage.read_host_keys() self.assertEqual(len(lines), 2) self.assertEqual(lines[0], line1) self.assertEqual(lines[1], line2)
def test_replace_host_key(self): """Testing FileSSHStorage.replace_host_key""" storage = FileSSHStorage() storage.add_host_key('host1', self.key1) storage.replace_host_key('host1', self.key1, self.key2) filename = storage.get_host_keys_filename() fp = open(filename, 'r') lines = fp.readlines() fp.close() self.assertEqual(len(lines), 1) self.assertEqual(lines[0], 'host1 ssh-dss %s\n' % self.key2_b64)
def test_replace_host_key(self): """Testing FileSSHStorage.replace_host_key""" storage = FileSSHStorage() storage.add_host_key('host1', test_keys.rsa_key) storage.replace_host_key('host1', test_keys.rsa_key, test_keys.dsa_key) filename = storage.get_host_keys_filename() with open(filename, 'r') as fp: lines = fp.readlines() self.assertEqual(len(lines), 1) self.assertEqual(lines[0], 'host1 ssh-dss %s\n' % test_keys.dsa_key_b64)