def operationWithRServer(self, serverfarm, rserver, type_of_operation): haproxy_rserver = HaproxyRserver() haproxy_rserver.name = rserver['name'] haproxy_serverfarm = HaproxyBackend() haproxy_serverfarm.name = serverfarm['name'] config_file = HaproxyConfigFile('%s/%s' % (self.localpath, self.configfilename)) remote_config = RemoteConfig(self.device_ref, self.localpath, self.remotepath, self.configfilename) remote_socket = RemoteSocketOperation(self.device_ref, haproxy_serverfarm, haproxy_rserver, self.interface, self.haproxy_socket) remote_config.get_config() if type_of_operation == 'suspend': config_file.enable_disable_reserver_in_backend_block( haproxy_serverfarm, haproxy_rserver, 'disable') remote_socket.suspend_server() elif type_of_operation == 'activate': config_file.enable_disable_reserver_in_backend_block( haproxy_serverfarm, haproxy_rserver, 'enable') remote_socket.activate_server() remote_config.put_config()
class TestHaproxyDriverRemoteSocketOperation(unittest.TestCase): def setUp(self): self.remote_socket = RemoteSocketOperation(device_fake, backend, rserver) self.remote_socket.ssh = Mock() file_channel = MagicMock(spec=file) self.remote_socket.ssh.exec_command.return_value = [file_channel, file_channel, file_channel] def test_suspend_server(self): self.assertTrue(self.remote_socket.suspend_server()) def test_activate_server(self): self.assertTrue(self.remote_socket.activate_server()) def test_get_statistics(self): self.assertTrue(self.remote_socket.get_statistics())