Exemplo n.º 1
0
def test_tramitacao_lote_documentos_views(admin_client):
    config = mommy.make(AppConfig, tramitacao_documento=True)

    tipo_documento = mommy.make(TipoDocumentoAdministrativo,
                                descricao="Tipo_Teste")
    documento_principal = mommy.make(DocumentoAdministrativo,
                                     numero=20,
                                     ano=2018,
                                     data="2018-01-04",
                                     tipo=tipo_documento)
    documento_anexado = mommy.make(DocumentoAdministrativo,
                                   numero=21,
                                   ano=2019,
                                   data="2019-05-04",
                                   tipo=tipo_documento)
    documento_anexado_anexado = mommy.make(DocumentoAdministrativo,
                                           numero=22,
                                           ano=2020,
                                           data="2020-01-05",
                                           tipo=tipo_documento)

    documento_sem_anexados = mommy.make(DocumentoAdministrativo,
                                        numero=23,
                                        ano=2020,
                                        data="2021-01-05",
                                        tipo=tipo_documento)

    mommy.make(Anexado,
               documento_principal=documento_principal,
               documento_anexado=documento_anexado,
               data_anexacao="2019-05-11")
    mommy.make(Anexado,
               documento_principal=documento_anexado,
               documento_anexado=documento_anexado_anexado,
               data_anexacao="2020-11-05")

    unidade_tramitacao_local_1 = make_unidade_tramitacao(descricao="Teste 1")
    unidade_tramitacao_destino_1 = make_unidade_tramitacao(descricao="Teste 2")
    unidade_tramitacao_destino_2 = make_unidade_tramitacao(descricao="Teste 3")
    unidade_tramitacao_destino_3 = make_unidade_tramitacao(descricao="Teste 4")

    status = mommy.make(StatusTramitacaoAdministrativo, indicador='R')

    url = reverse('sapl.protocoloadm:primeira_tramitacao_em_lote_docadm')
    url = url + '?' + urlencode({
        'tipo': tipo_documento.id,
        'data_0': '',
        'data_1': ''
    })

    response = admin_client.post(url, {'salvar': 'salvar'}, follow=True)
    assert response.status_code == 200

    msgs = [m.message for m in response.context['messages']]
    assert len(msgs) == 1
    assert msgs[0] == 'Escolha algum Documento para ser tramitado.'

    documentos = [documento_sem_anexados.id, documento_anexado_anexado.id]

    response = admin_client.post(url, {
        'documentos': documentos,
        'salvar': 'salvar'
    },
                                 follow=True)
    msgs = [m.message for m in response.context['messages']]

    assert 'Data Tramitação: Este campo é obrigatório.' in msgs
    assert 'Unidade Local: Este campo é obrigatório.' in msgs
    assert 'Status: Este campo é obrigatório.' in msgs
    assert 'Unidade Destino: Este campo é obrigatório.' in msgs
    assert 'Texto da Ação: Este campo é obrigatório.' in msgs

    # Primeira tramitação em lote

    response = admin_client.post(
        url, {
            'documentos': documentos,
            'data_tramitacao': date(2019, 5, 15),
            'unidade_tramitacao_local': unidade_tramitacao_local_1.id,
            'unidade_tramitacao_destino': unidade_tramitacao_destino_1.id,
            'status': status.id,
            'urgente': False,
            'texto': 'aaaa',
            'salvar': 'salvar'
        },
        follow=True)

    assert response.status_code == 200

    assert TramitacaoAdministrativo.objects.all().count() == 2
    assert documento_sem_anexados.tramitacaoadministrativo_set.all().count(
    ) == 1
    assert documento_anexado_anexado.tramitacaoadministrativo_set.all().count(
    ) == 1

    # Segunda tramitação em lote

    url_lote = reverse('sapl.protocoloadm:tramitacao_em_lote_docadm')
    url_lote = url_lote + '?' + urlencode({
        'tipo':
        tipo_documento.id,
        'tramitacaoadministrativo__unidade_tramitacao_destino':
        unidade_tramitacao_destino_1.id,
        'tramitacaoadministrativo__status':
        status.id,
        'data_0':
        '',
        'data_1':
        ''
    })

    response = admin_client.post(url_lote, {'salvar': 'salvar'}, follow=True)
    assert response.status_code == 200

    assert response.context_data['object_list'].count() == 2

    msgs = [m.message for m in response.context['messages']]
    assert len(msgs) == 1
    assert msgs[0] == 'Escolha algum Documento para ser tramitado.'

    response = admin_client.post(url_lote, {
        'documentos': documentos,
        'salvar': 'salvar'
    },
                                 follow=True)
    assert response.status_code == 200

    msgs = [m.message for m in response.context['messages']]

    assert 'Data Tramitação: Este campo é obrigatório.' in msgs
    assert 'Unidade Local: Este campo é obrigatório.' in msgs
    assert 'Status: Este campo é obrigatório.' in msgs
    assert 'Unidade Destino: Este campo é obrigatório.' in msgs
    assert 'Texto da Ação: Este campo é obrigatório.' in msgs

    response = admin_client.post(
        url_lote, {
            'documentos': documentos,
            'data_tramitacao': date(2019, 5, 15),
            'unidade_tramitacao_local': unidade_tramitacao_destino_1.id,
            'unidade_tramitacao_destino': unidade_tramitacao_destino_2.id,
            'status': status.id,
            'urgente': False,
            'texto': 'aaaa',
            'salvar': 'salvar'
        },
        follow=True)
    assert response.status_code == 200

    msgs = [m.message for m in response.context['messages']]

    assert 'Tramitação completa.' in msgs

    assert TramitacaoAdministrativo.objects.all().count() == 4
    assert documento_sem_anexados.tramitacaoadministrativo_set.all().count(
    ) == 2
    assert documento_anexado_anexado.tramitacaoadministrativo_set.all().count(
    ) == 2

    # Tramitar documentos com anexados
    # O documento anexado ao anexado não deve tramitar junto porque já está com tramitação diferente
    documentos = [documento_principal.id]

    response = admin_client.post(
        url, {
            'documentos': documentos,
            'data_tramitacao': date(2019, 5, 15),
            'unidade_tramitacao_local': unidade_tramitacao_local_1.id,
            'unidade_tramitacao_destino': unidade_tramitacao_destino_1.id,
            'status': status.id,
            'urgente': False,
            'texto': 'aaaa',
            'salvar': 'salvar'
        },
        follow=True)

    assert response.status_code == 200

    assert TramitacaoAdministrativo.objects.all().count() == 6
    assert documento_principal.tramitacaoadministrativo_set.all().count() == 1
    assert documento_anexado.tramitacaoadministrativo_set.all().count() == 1

    # Segunda tramitação com documentos anexados
    response = admin_client.post(
        url_lote, {
            'documentos': documentos,
            'data_tramitacao': date(2019, 5, 15),
            'unidade_tramitacao_local': unidade_tramitacao_destino_1.id,
            'unidade_tramitacao_destino': unidade_tramitacao_destino_2.id,
            'status': status.id,
            'urgente': False,
            'texto': 'aaaa',
            'salvar': 'salvar'
        },
        follow=True)
    assert response.status_code == 200

    msgs = [m.message for m in response.context['messages']]

    assert 'Tramitação completa.' in msgs

    assert TramitacaoAdministrativo.objects.all().count() == 8
    assert documento_principal.tramitacaoadministrativo_set.all().count() == 2
    assert documento_anexado.tramitacaoadministrativo_set.all().count() == 2

    # Terceira tramitação em lote
    # Agora, o documento anexado ao anexado deve tramitar junto com o documento principal,
    # pois suas tramitações convergiram

    response = admin_client.post(
        url_lote, {
            'documentos': documentos,
            'data_tramitacao': date(2019, 5, 15),
            'unidade_tramitacao_local': unidade_tramitacao_destino_2.id,
            'unidade_tramitacao_destino': unidade_tramitacao_destino_3.id,
            'status': status.id,
            'urgente': False,
            'texto': 'aaaa',
            'salvar': 'salvar'
        },
        follow=True)
    assert response.status_code == 200

    msgs = [m.message for m in response.context['messages']]

    assert 'Tramitação completa.' in msgs

    assert TramitacaoAdministrativo.objects.all().count() == 11
    assert documento_principal.tramitacaoadministrativo_set.all().count() == 3
    assert documento_anexado.tramitacaoadministrativo_set.all().count() == 3
    assert documento_anexado_anexado.tramitacaoadministrativo_set.all().count(
    ) == 3

    # Agora testando para caso não seja desejado tramitar os documentos anexados
    # junto com os documentos principais
    config.tramitacao_documento = False
    config.save()

    TramitacaoAdministrativo.objects.all().delete()
    assert TramitacaoAdministrativo.objects.all().count() == 0

    # Primeira tramitação em lote
    # Tramitar documentos com anexados
    # O documento anexado não deve tramitar junto com o prinicpal
    documentos = [documento_principal.id]

    response = admin_client.post(
        url, {
            'documentos': documentos,
            'data_tramitacao': date(2019, 5, 15),
            'unidade_tramitacao_local': unidade_tramitacao_local_1.id,
            'unidade_tramitacao_destino': unidade_tramitacao_destino_1.id,
            'status': status.id,
            'urgente': False,
            'texto': 'aaaa',
            'salvar': 'salvar'
        },
        follow=True)

    assert response.status_code == 200

    assert TramitacaoAdministrativo.objects.all().count() == 1
    assert documento_principal.tramitacaoadministrativo_set.all().count() == 1
    assert documento_anexado.tramitacaoadministrativo_set.all().count() == 0
    assert documento_anexado_anexado.tramitacaoadministrativo_set.all().count(
    ) == 0

    # Tramitar o doc anexado ao principal para testar a segunda tramitação em lote
    documentos = [documento_anexado.id]

    response = admin_client.post(
        url, {
            'documentos': documentos,
            'data_tramitacao': date(2019, 5, 15),
            'unidade_tramitacao_local': unidade_tramitacao_local_1.id,
            'unidade_tramitacao_destino': unidade_tramitacao_destino_1.id,
            'status': status.id,
            'urgente': False,
            'texto': 'aaaa',
            'salvar': 'salvar'
        },
        follow=True)

    assert response.status_code == 200

    assert TramitacaoAdministrativo.objects.all().count() == 2
    assert documento_principal.tramitacaoadministrativo_set.all().count() == 1
    assert documento_anexado.tramitacaoadministrativo_set.all().count() == 1
    assert documento_anexado_anexado.tramitacaoadministrativo_set.all().count(
    ) == 0

    tramitacao_principal = documento_principal.tramitacaoadministrativo_set.last(
    )
    tramitacao_anexada = documento_anexado.tramitacaoadministrativo_set.last()
    assert compara_tramitacoes_doc(tramitacao_anexada, tramitacao_principal)

    documentos = [documento_principal.id]
    # Segunda tramitação, o documento anexado não deve tramitar com o principal
    response = admin_client.post(
        url_lote, {
            'documentos': documentos,
            'data_tramitacao': date(2019, 5, 15),
            'unidade_tramitacao_local': unidade_tramitacao_destino_1.id,
            'unidade_tramitacao_destino': unidade_tramitacao_destino_2.id,
            'status': status.id,
            'urgente': False,
            'texto': 'aaaa',
            'salvar': 'salvar'
        },
        follow=True)
    assert response.status_code == 200

    msgs = [m.message for m in response.context['messages']]

    assert 'Tramitação completa.' in msgs

    assert TramitacaoAdministrativo.objects.all().count() == 3
    assert documento_principal.tramitacaoadministrativo_set.all().count() == 2
    assert documento_anexado.tramitacaoadministrativo_set.all().count() == 1
    assert documento_anexado_anexado.tramitacaoadministrativo_set.all().count(
    ) == 0
Exemplo n.º 2
0
def test_tramitacoes_documentos_anexados(admin_client):

    config = mommy.make(AppConfig, tramitacao_documento=True)

    tipo_documento = mommy.make(TipoDocumentoAdministrativo,
                                descricao="Tipo_Teste")
    documento_principal = mommy.make(DocumentoAdministrativo,
                                     numero=20,
                                     ano=2018,
                                     data="2018-01-04",
                                     tipo=tipo_documento)
    documento_anexado = mommy.make(DocumentoAdministrativo,
                                   numero=21,
                                   ano=2019,
                                   data="2019-05-04",
                                   tipo=tipo_documento)
    documento_anexado_anexado = mommy.make(DocumentoAdministrativo,
                                           numero=22,
                                           ano=2020,
                                           data="2020-01-05",
                                           tipo=tipo_documento)

    mommy.make(Anexado,
               documento_principal=documento_principal,
               documento_anexado=documento_anexado,
               data_anexacao="2019-05-11")
    mommy.make(Anexado,
               documento_principal=documento_anexado,
               documento_anexado=documento_anexado_anexado,
               data_anexacao="2020-11-05")

    unidade_tramitacao_local_1 = make_unidade_tramitacao(descricao="Teste 1")
    unidade_tramitacao_destino_1 = make_unidade_tramitacao(descricao="Teste 2")
    unidade_tramitacao_destino_2 = make_unidade_tramitacao(descricao="Teste 3")

    status = mommy.make(StatusTramitacaoAdministrativo, indicador='R')

    # Teste criação de Tramitacao
    form = TramitacaoAdmForm(data={})
    form.data = {
        'data_tramitacao': date(2019, 5, 6),
        'unidade_tramitacao_local': unidade_tramitacao_local_1.pk,
        'unidade_tramitacao_destino': unidade_tramitacao_destino_1.pk,
        'status': status.pk,
        'urgente': False,
        'texto': "Texto de teste"
    }
    form.instance.documento_id = documento_principal.pk

    assert form.is_valid()
    tramitacao_principal = form.save()
    tramitacao_anexada = documento_anexado.tramitacaoadministrativo_set.last()
    tramitacao_anexada_anexada = documento_anexado_anexado.tramitacaoadministrativo_set.last(
    )

    # Verifica se foram criadas as tramitações para os documentos anexados e anexados aos anexados
    assert documento_principal.tramitacaoadministrativo_set.last(
    ) == tramitacao_principal
    assert tramitacao_principal.documento.tramitacao == (
        tramitacao_principal.status.indicador != "F")
    assert compara_tramitacoes_doc(tramitacao_principal, tramitacao_anexada)
    assert DocumentoAdministrativo.objects.get(id=documento_anexado.pk).tramitacao \
            == (tramitacao_anexada.status.indicador != "F")
    assert compara_tramitacoes_doc(tramitacao_anexada_anexada,
                                   tramitacao_principal)
    assert DocumentoAdministrativo.objects.get(id=documento_anexado_anexado.pk).tramitacao \
            == (tramitacao_anexada_anexada.status.indicador != "F")

    # Teste Edição de Tramitacao
    form = TramitacaoAdmEditForm(data={})
    # Alterando unidade_tramitacao_destino
    form.data = {
        'data_tramitacao': tramitacao_principal.data_tramitacao,
        'unidade_tramitacao_local':
        tramitacao_principal.unidade_tramitacao_local.pk,
        'unidade_tramitacao_destino': unidade_tramitacao_destino_2.pk,
        'status': tramitacao_principal.status.pk,
        'urgente': tramitacao_principal.urgente,
        'texto': tramitacao_principal.texto
    }
    form.instance = tramitacao_principal

    assert form.is_valid()
    tramitacao_principal = form.save()
    tramitacao_anexada = documento_anexado.tramitacaoadministrativo_set.last()
    tramitacao_anexada_anexada = documento_anexado_anexado.tramitacaoadministrativo_set.last(
    )

    assert tramitacao_principal.unidade_tramitacao_destino == unidade_tramitacao_destino_2
    assert tramitacao_anexada.unidade_tramitacao_destino == unidade_tramitacao_destino_2
    assert tramitacao_anexada_anexada.unidade_tramitacao_destino == unidade_tramitacao_destino_2

    # Teste Remoção de Tramitacao
    url = reverse('sapl.protocoloadm:tramitacaoadministrativo_delete',
                  kwargs={'pk': tramitacao_principal.pk})
    response = admin_client.post(url, {'confirmar': 'confirmar'}, follow=True)
    assert TramitacaoAdministrativo.objects.filter(
        id=tramitacao_principal.pk).count() == 0
    assert TramitacaoAdministrativo.objects.filter(
        id=tramitacao_anexada.pk).count() == 0
    assert TramitacaoAdministrativo.objects.filter(
        id=tramitacao_anexada_anexada.pk).count() == 0

    # Testes para quando as tramitações das anexadas divergem
    form = TramitacaoAdmForm(data={})
    form.data = {
        'data_tramitacao': date(2019, 5, 6),
        'unidade_tramitacao_local': unidade_tramitacao_local_1.pk,
        'unidade_tramitacao_destino': unidade_tramitacao_destino_1.pk,
        'status': status.pk,
        'urgente': False,
        'texto': "Texto de teste"
    }
    form.instance.documento_id = documento_principal.pk

    assert form.is_valid()
    tramitacao_principal = form.save()
    tramitacao_anexada = documento_anexado.tramitacaoadministrativo_set.last()
    tramitacao_anexada_anexada = documento_anexado_anexado.tramitacaoadministrativo_set.last(
    )

    form = TramitacaoAdmEditForm(data={})
    # Alterando unidade_tramitacao_destino
    form.data = {
        'data_tramitacao': tramitacao_anexada.data_tramitacao,
        'unidade_tramitacao_local':
        tramitacao_anexada.unidade_tramitacao_local.pk,
        'unidade_tramitacao_destino': unidade_tramitacao_destino_2.pk,
        'status': tramitacao_anexada.status.pk,
        'urgente': tramitacao_anexada.urgente,
        'texto': tramitacao_anexada.texto
    }
    form.instance = tramitacao_anexada

    assert form.is_valid()
    tramitacao_anexada = form.save()
    tramitacao_anexada_anexada = documento_anexado_anexado.tramitacaoadministrativo_set.last(
    )

    assert tramitacao_principal.unidade_tramitacao_destino == unidade_tramitacao_destino_1
    assert tramitacao_anexada.unidade_tramitacao_destino == unidade_tramitacao_destino_2
    assert tramitacao_anexada_anexada.unidade_tramitacao_destino == unidade_tramitacao_destino_2

    # Editando a tramitação principal, as tramitações anexadas não devem ser editadas
    form = TramitacaoAdmEditForm(data={})
    # Alterando o texto
    form.data = {
        'data_tramitacao':
        tramitacao_principal.data_tramitacao,
        'unidade_tramitacao_local':
        tramitacao_principal.unidade_tramitacao_local.pk,
        'unidade_tramitacao_destino':
        tramitacao_principal.unidade_tramitacao_destino.pk,
        'status':
        tramitacao_principal.status.pk,
        'urgente':
        tramitacao_principal.urgente,
        'texto':
        "Testando a alteração"
    }
    form.instance = tramitacao_principal

    assert form.is_valid()
    tramitacao_principal = form.save()
    tramitacao_anexada = documento_anexado.tramitacaoadministrativo_set.last()
    tramitacao_anexada_anexada = documento_anexado_anexado.tramitacaoadministrativo_set.last(
    )

    assert tramitacao_principal.texto == "Testando a alteração"
    assert not tramitacao_anexada.texto == "Testando a alteração"
    assert not tramitacao_anexada_anexada.texto == "Testando a alteração"

    # Removendo a tramitação pricipal, as tramitações anexadas não devem ser removidas, pois divergiram
    url = reverse('sapl.protocoloadm:tramitacaoadministrativo_delete',
                  kwargs={'pk': tramitacao_principal.pk})
    response = admin_client.post(url, {'confirmar': 'confirmar'}, follow=True)
    assert TramitacaoAdministrativo.objects.filter(
        id=tramitacao_principal.pk).count() == 0
    assert TramitacaoAdministrativo.objects.filter(
        id=tramitacao_anexada.pk).count() == 1
    assert TramitacaoAdministrativo.objects.filter(
        id=tramitacao_anexada_anexada.pk).count() == 1

    # Removendo a tramitação anexada, a tramitação anexada à anexada deve ser removida
    url = reverse('sapl.protocoloadm:tramitacaoadministrativo_delete',
                  kwargs={'pk': tramitacao_anexada.pk})
    response = admin_client.post(url, {'confirmar': 'confirmar'}, follow=True)
    assert TramitacaoAdministrativo.objects.filter(
        id=tramitacao_anexada.pk).count() == 0
    assert TramitacaoAdministrativo.objects.filter(
        id=tramitacao_anexada_anexada.pk).count() == 0

    # Agora testando para caso não seja desejado tramitar os documentos anexados
    # junto com os documentos principais
    config.tramitacao_documento = False
    config.save()

    # Teste criação de Tramitacao
    form = TramitacaoAdmForm(data={})
    form.data = {
        'data_tramitacao': date(2019, 5, 6),
        'unidade_tramitacao_local': unidade_tramitacao_local_1.pk,
        'unidade_tramitacao_destino': unidade_tramitacao_destino_1.pk,
        'status': status.pk,
        'urgente': False,
        'texto': "Texto de teste"
    }
    form.instance.documento_id = documento_principal.pk

    assert form.is_valid()
    tramitacao_principal = form.save()
    tramitacao_anexada = documento_anexado.tramitacaoadministrativo_set.last()
    tramitacao_anexada_anexada = documento_anexado_anexado.tramitacaoadministrativo_set.last(
    )

    # Verifica se não foram criadas as tramitações para os documentos anexados e anexados aos anexados
    assert documento_principal.tramitacaoadministrativo_set.last(
    ) == tramitacao_principal
    assert tramitacao_principal.documento.tramitacao == (
        tramitacao_principal.status.indicador != "F")
    assert not tramitacao_anexada
    assert not tramitacao_anexada_anexada

    # Cria uma tramitação igual na tramitação anexada para testar a edição
    form = TramitacaoAdmForm(data={})
    form.data = {
        'data_tramitacao': date(2019, 5, 6),
        'unidade_tramitacao_local': unidade_tramitacao_local_1.pk,
        'unidade_tramitacao_destino': unidade_tramitacao_destino_1.pk,
        'status': status.pk,
        'urgente': False,
        'texto': "Texto de teste"
    }
    form.instance.documento_id = documento_anexado.pk

    assert form.is_valid()
    tramitacao_anexada = form.save()
    tramitacao_principal = documento_principal.tramitacaoadministrativo_set.last(
    )
    tramitacao_anexada_anexada = documento_anexado_anexado.tramitacaoadministrativo_set.last(
    )

    assert documento_principal.tramitacaoadministrativo_set.all().count() == 1
    assert documento_anexado.tramitacaoadministrativo_set.last(
    ) == tramitacao_anexada
    assert not tramitacao_anexada_anexada

    form = TramitacaoAdmEditForm(data={})
    # Alterando unidade_tramitacao_destino da matéria principal,
    # as anexadas não devem ser alteradas
    form.data = {
        'data_tramitacao': tramitacao_principal.data_tramitacao,
        'unidade_tramitacao_local':
        tramitacao_principal.unidade_tramitacao_local.pk,
        'unidade_tramitacao_destino': unidade_tramitacao_destino_2.pk,
        'status': tramitacao_principal.status.pk,
        'urgente': tramitacao_principal.urgente,
        'texto': tramitacao_principal.texto
    }
    form.instance = tramitacao_principal

    assert form.is_valid()
    tramitacao_principal = form.save()
    tramitacao_anexada = documento_anexado.tramitacaoadministrativo_set.last()
    tramitacao_anexada_anexada = documento_anexado_anexado.tramitacaoadministrativo_set.last(
    )

    assert tramitacao_principal.unidade_tramitacao_destino == unidade_tramitacao_destino_2
    assert tramitacao_anexada.unidade_tramitacao_destino == unidade_tramitacao_destino_1
    assert not tramitacao_anexada_anexada

    form = TramitacaoAdmEditForm(data={})
    # Alterando a anexada da principal para testar a remoção de tramitação
    form.data = {
        'data_tramitacao': tramitacao_principal.data_tramitacao,
        'unidade_tramitacao_local':
        tramitacao_principal.unidade_tramitacao_local.pk,
        'unidade_tramitacao_destino': unidade_tramitacao_destino_2.pk,
        'status': tramitacao_principal.status.pk,
        'urgente': tramitacao_principal.urgente,
        'texto': tramitacao_principal.texto
    }
    form.instance = tramitacao_anexada

    assert form.is_valid()
    tramitacao_anexada = form.save()
    tramitacao_principal = documento_principal.tramitacaoadministrativo_set.last(
    )
    tramitacao_anexada_anexada = documento_anexado_anexado.tramitacaoadministrativo_set.last(
    )

    assert tramitacao_principal.unidade_tramitacao_destino == unidade_tramitacao_destino_2
    assert tramitacao_anexada.unidade_tramitacao_destino == unidade_tramitacao_destino_2
    assert not tramitacao_anexada_anexada
    assert compara_tramitacoes_doc(tramitacao_anexada, tramitacao_principal)

    # Removendo a tramitação principal, a tramitação anexada não deve ser removida
    url = reverse('sapl.protocoloadm:tramitacaoadministrativo_delete',
                  kwargs={'pk': tramitacao_principal.pk})
    response = admin_client.post(url, {'confirmar': 'confirmar'}, follow=True)
    assert TramitacaoAdministrativo.objects.filter(
        id=tramitacao_principal.pk).count() == 0
    assert TramitacaoAdministrativo.objects.filter(
        id=tramitacao_anexada.pk).count() == 1