def test_container_ip_remove_ipv6( self, m_netns, m_client, m_get_container_info_or_exit, m_get_pool_or_exit, m_enforce_root ): """ Test for container_ip_remove with an ipv6 ip argument """ # Set up mock objects m_get_pool_or_exit.return_value = "pool" m_get_container_info_or_exit.return_value = {"Id": 666, "State": {"Running": 1, "Pid": "Pid_info"}} ipv6_nets = set() ipv6_nets.add(IPNetwork(IPAddress("1::1"))) m_endpoint = Mock(spec=Endpoint) m_endpoint.ipv6_nets = ipv6_nets m_client.get_endpoint.return_value = m_endpoint # Set up arguments to pass to method under test container_name = "container1" ip = "1::1" interface = "interface" # Call method under test container.container_ip_remove(container_name, ip, interface) # Assert m_enforce_root.assert_called_once_with() m_get_pool_or_exit.assert_called_once_with(IPAddress(ip)) m_get_container_info_or_exit.assert_called_once_with(container_name) m_client.get_endpoint.assert_called_once_with( hostname=utils.hostname, orchestrator_id=utils.ORCHESTRATOR_ID, workload_id=666 ) m_client.update_endpoint.assert_called_once_with(m_endpoint) m_netns.remove_ip_from_ns_veth.assert_called_once_with("Pid_info", IPAddress(ip), interface) m_client.unassign_address.assert_called_once_with("pool", ip)
def test_container_ip_remove_ipv6(self, m_netns, m_client, m_get_container_info_or_exit, m_get_pool_or_exit, m_enforce_root): """ Test for container_ip_remove with an ipv6 ip argument """ # Set up mock objects m_get_pool_or_exit.return_value = 'pool' m_get_container_info_or_exit.return_value = { 'Id': 666, 'State': { 'Running': 1, 'Pid': 'Pid_info' } } ipv6_nets = set() ipv6_nets.add(IPNetwork(IPAddress('1::1'))) m_endpoint = Mock(spec=Endpoint) m_endpoint.ipv6_nets = ipv6_nets m_client.get_endpoint.return_value = m_endpoint m_namespace = Mock() m_netns.PidNamespace.return_value = m_namespace # Set up arguments to pass to method under test container_name = 'container1' ip = '1::1' interface = 'interface' # Call method under test container.container_ip_remove(container_name, ip, interface) # Assert m_enforce_root.assert_called_once_with() m_get_pool_or_exit.assert_called_once_with(IPAddress(ip)) m_get_container_info_or_exit.assert_called_once_with(container_name) m_client.get_endpoint.assert_called_once_with( hostname=utils.hostname, orchestrator_id=utils.DOCKER_ORCHESTRATOR_ID, workload_id=666) m_client.update_endpoint.assert_called_once_with(m_endpoint) m_netns.PidNamespace.assert_called_once_with("Pid_info") m_netns.remove_ip_from_ns_veth.assert_called_once_with( m_namespace, IPAddress(ip), interface) m_client.unassign_address.assert_called_once_with( 'pool', IPAddress(ip))
def test_container_ip_remove_ipv6(self, m_netns, m_client, m_get_container_info_or_exit, m_get_pool_or_exit, m_enforce_root): """ Test for container_ip_remove with an ipv6 ip argument """ # Set up mock objects m_get_pool_or_exit.return_value = 'pool' m_get_container_info_or_exit.return_value = { 'Id': 666, 'State': {'Running': 1, 'Pid': 'Pid_info'} } ipv6_nets = set() ipv6_nets.add(IPNetwork(IPAddress('1::1'))) m_endpoint = Mock(spec=Endpoint) m_endpoint.ipv6_nets = ipv6_nets m_client.get_endpoint.return_value = m_endpoint m_namespace = Mock() m_netns.PidNamespace.return_value = m_namespace # Set up arguments to pass to method under test container_name = 'container1' ip = '1::1' interface = 'interface' # Call method under test container.container_ip_remove(container_name, ip, interface) # Assert m_enforce_root.assert_called_once_with() m_get_pool_or_exit.assert_called_once_with(IPAddress(ip)) m_get_container_info_or_exit.assert_called_once_with(container_name) m_client.get_endpoint.assert_called_once_with( hostname=utils.hostname, orchestrator_id=utils.DOCKER_ORCHESTRATOR_ID, workload_id=666 ) m_client.update_endpoint.assert_called_once_with(m_endpoint) m_netns.PidNamespace.assert_called_once_with("Pid_info") m_netns.remove_ip_from_ns_veth.assert_called_once_with(m_namespace, IPAddress(ip), interface) m_client.unassign_address.assert_called_once_with('pool', IPAddress(ip))