def test_deploy_networkIPv4_configuration_with_inactive_vlan(self):
        self.networkv4.vlan.ativada = False

        ipv4 = Ip(oct1=192, oct2=168, oct3=0, oct4=0)
        self.mock_ip_get_by_octets(Ip(oct1 = 192, oct2 = 168, oct3 = 0, oct4 = 0))
        self.mock_find_equipamento_ip([IpEquipamento()])
        self.mock_dhcp_relay_find([DHCPRelayIPv4(ipv4 = ipv4)])
        self.mock_find_roteiro(EquipamentoRoteiro(roteiro = Roteiro(roteiro = 'roteiro')))
        self.mock_template_file_read('script content')
        deploy_config_mock = self.mock_deploy_config('config_deployed')
        network_activation_mock = self.mock_network_activation()
        vlan_activation_mock = self.mock_vlan_activation()

        response = deploy_networkIPv4_configuration(self.user, self.networkv4, self.equipment_list)

        self.assertTrue(deploy_config_mock.called)
        network_activation_mock.assert_called_with(self.user)
        vlan_activation_mock.assert_called_with(self.user)
        self.assertEquals({1: 'config_deployed'}, response)
        if len(equipment_list) == 0:
            raise exceptions.NoEnvironmentRoutersFoundException()

    # Check permission to configure equipments 
    for equip in equipment_list:
        # User permission
        if not has_perm(request.user, AdminPermission.EQUIPMENT_MANAGEMENT, AdminPermission.WRITE_OPERATION, None, equip.id, AdminPermission.EQUIP_WRITE_OPERATION):
            log.error(u'User does not have permission to perform the operation.')
            raise PermissionDenied("No permission to configure equipment %s-%s" % (equip.id, equip.nome) )

    if all_equipments_are_in_maintenance(equipment_list):
        raise AllEquipmentsAreInMaintenanceException()

    #deploy network configuration
    if request.method == 'POST':
        returned_data = facade.deploy_networkIPv4_configuration(request.user, networkipv4, equipment_list)
    elif request.method == 'DELETE':
        returned_data = facade.remove_deploy_networkIPv4_configuration(request.user, networkipv4, equipment_list)

    return Response(returned_data)


@api_view(['GET'])
@permission_classes((IsAuthenticated, Read))
def networksIPv6(request):
    '''Lists network ipv6 and filter by url parameters
    '''

    try:

        environment_vip = ''
    def test_deploy_networkIPv4_configuration_given_gateway_ip_not_found(self):
        self.mock_ip_get_by_octets(None)

        with self.assertRaises(IncorrectRedundantGatewayRegistryException):
            deploy_networkIPv4_configuration(self.user, self.networkv4, self.equipment_list)
    def test_deploy_networkIPv4_configuration_given_gateway_equipment_not_found(self):
        self.mock_ip_get_by_octets(Ip(oct1 = 192, oct2 = 168, oct3 = 0, oct4 = 0))
        self.mock_find_equipamento_ip([])

        with self.assertRaises(IncorrectRedundantGatewayRegistryException):
            deploy_networkIPv4_configuration(self.user, self.networkv4, self.equipment_list)
    def test_deploy_networkIPv4_configuration_given_network_already_active(self):
        self.networkv4.active = True

        response = deploy_networkIPv4_configuration(self.user, self.networkv4, self.equipment_list)
        self.assertEqual('Network already active. Nothing to do.', response['output'], "Nothing to be done.No actions should me taken")