Skip to content

Commit

Permalink
test: review testes componentes digitais
Browse files Browse the repository at this point in the history
  • Loading branch information
marvdias committed Sep 10, 2024
1 parent d018cf0 commit 6e61ad1
Show file tree
Hide file tree
Showing 6 changed files with 23 additions and 347 deletions.
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
<?php

use \utilphp\util;
use Tests\Funcional\Sei\Fixtures\{ProtocoloFixture,ProcedimentoFixture,AtividadeFixture,ParticipanteFixture,RelProtocoloAssuntoFixture,AtributoAndamentoFixture,DocumentoFixture,AssinaturaFixture};

/**
* Execution Groups
Expand Down Expand Up @@ -100,46 +99,9 @@ public function test_devolucao_processo_para_origem()
$documentoTeste1 = $this->gerarDadosDocumentoInternoTeste($remetente);
$documentoTeste2 = $this->gerarDadosDocumentoExternoTeste($remetente);

$objProtocoloFixture = new ProtocoloFixture();
$objProtocoloDTO = $objProtocoloFixture->buscar([
'ProtocoloFormatado' => self::$processoTeste['PROTOCOLO'],
])[0];
$novosDocumentos = array($documentoTeste1, $documentoTeste2);
$this->realizarTramiteExternoComValidacaoNoRemetenteFixture(self::$processoTeste, $novosDocumentos, $remetente, $destinatario);

$this->cadastrarDocumentoInternoFixture($documentoTeste1, $objProtocoloDTO->getDblIdProtocolo());
$this->cadastrarDocumentoExternoFixture($documentoTeste2, $objProtocoloDTO->getDblIdProtocolo());

$this->acessarSistema($remetente['URL'], $remetente['SIGLA_UNIDADE'], $remetente['LOGIN'], $remetente['SENHA']);
$this->abrirProcesso(self::$processoTeste['PROTOCOLO']);

$this->tramitarProcessoExternamente(
self::$processoTeste['PROTOCOLO'], $destinatario['REP_ESTRUTURAS'], $destinatario['NOME_UNIDADE'],
$destinatario['SIGLA_UNIDADE_HIERARQUIA'], false
);

$this->waitUntil(function ($testCase) use (&$orgaosDiferentes) {
sleep(5);
$this->atualizarTramitesPEN();
$testCase->refresh();
$paginaProcesso = new PaginaProcesso($testCase);
$testCase->assertStringNotContainsString(utf8_encode("Processo em trâmite externo para "), $paginaProcesso->informacao());
$testCase->assertFalse($paginaProcesso->processoAberto());
$testCase->assertEquals($orgaosDiferentes, $paginaProcesso->processoBloqueado());
return true;
}, PEN_WAIT_TIMEOUT);

// 7 - Validar se recibo de trâmite foi armazenado para o processo (envio e conclusão)
$unidade = mb_convert_encoding($destinatario['NOME_UNIDADE'], "ISO-8859-1");
$mensagemRecibo = sprintf("Trâmite externo do Processo %s para %s", self::$processoTeste['PROTOCOLO'], $unidade);
$this->validarRecibosTramite($mensagemRecibo, true, true);

// 8 - Validar histórico de trâmite do processo
$this->validarHistoricoTramite($destinatario['NOME_UNIDADE'], true, true);

// 9 - Verificar se processo está na lista de Processos Tramitados Externamente
$this->validarProcessosTramitados(self::$processoTeste['PROTOCOLO'], $orgaosDiferentes);

$totalDdocumentos = array(self::$documentoZip, $documentoTeste1, $documentoTeste2);
$this->realizarValidacaoRecebimentoProcessoNoDestinatario(self::$processoTeste, $totalDdocumentos, $destinatario);
}

/**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
<?php

use \utilphp\util;
use Tests\Funcional\Sei\Fixtures\{ProtocoloFixture,ProcedimentoFixture,AtividadeFixture,ParticipanteFixture,RelProtocoloAssuntoFixture,AtributoAndamentoFixture,DocumentoFixture,AssinaturaFixture};

class TramiteRecebimentoMultiplosComponentesDigitaisApenasPendentes extends FixtureCenarioBaseTestCase
{
Expand Down Expand Up @@ -91,47 +90,12 @@ public function test_devolucao_processo_para_origem_1()
// Configuração do dados para teste do cenário
$remetente = self::$contextoOrgaoB;
$destinatario = self::$contextoOrgaoA;
$orgaosDiferentes = $remetente['URL'] != $destinatario['URL'];

$documentoTesteInterno = $this->gerarDadosDocumentoInternoTeste($remetente);

putenv("DATABASE_HOST=org2-database");
$objProtocoloFixture = new ProtocoloFixture();
$objProtocoloDTO = $objProtocoloFixture->buscar([
'ProtocoloFormatado' => self::$processoTeste['PROTOCOLO'],
])[0];

$this->cadastrarDocumentoInternoFixture($documentoTesteInterno, $objProtocoloDTO->getDblIdProtocolo());

$this->acessarSistema($remetente['URL'], $remetente['SIGLA_UNIDADE'], $remetente['LOGIN'], $remetente['SENHA']);
$this->abrirProcesso(self::$processoTeste['PROTOCOLO']);

$this->tramitarProcessoExternamente(
self::$processoTeste['PROTOCOLO'], $destinatario['REP_ESTRUTURAS'], $destinatario['NOME_UNIDADE'],
$destinatario['SIGLA_UNIDADE_HIERARQUIA'], false
);

$this->waitUntil(function ($testCase) use (&$orgaosDiferentes) {
sleep(5);
$this->atualizarTramitesPEN();
$testCase->refresh();
$paginaProcesso = new PaginaProcesso($testCase);
$testCase->assertStringNotContainsString(utf8_encode("Processo em trâmite externo para "), $paginaProcesso->informacao());
$testCase->assertFalse($paginaProcesso->processoAberto());
$testCase->assertEquals($orgaosDiferentes, $paginaProcesso->processoBloqueado());
return true;
}, PEN_WAIT_TIMEOUT);

// 7 - Validar se recibo de trâmite foi armazenado para o processo (envio e conclusão)
$unidade = mb_convert_encoding($destinatario['NOME_UNIDADE'], "ISO-8859-1");
$mensagemRecibo = sprintf("Trâmite externo do Processo %s para %s", self::$processoTeste['PROTOCOLO'], $unidade);
$this->validarRecibosTramite($mensagemRecibo, true, true);

// 8 - Validar histórico de trâmite do processo
$this->validarHistoricoTramite($destinatario['NOME_UNIDADE'], true, true);

// 9 - Verificar se processo está na lista de Processos Tramitados Externamente
$this->validarProcessosTramitados(self::$processoTeste['PROTOCOLO'], $orgaosDiferentes);
$novosDocumentos = array($documentoTesteInterno);
$this->realizarTramiteExternoComValidacaoNoRemetenteFixture(self::$processoTeste, $novosDocumentos, $remetente, $destinatario);

self::$totalDocumentos = array_merge(self::$totalDocumentos, array($documentoTesteInterno));
$this->realizarValidacaoRecebimentoProcessoNoDestinatario(self::$processoTeste, self::$totalDocumentos, $destinatario);
Expand All @@ -154,43 +118,9 @@ public function test_devolucao_processo_para_destino_2()
$documentoTesteExterno = $this->gerarDadosDocumentoExternoTeste($remetente, self::CONTEUDO_DOCUMENTO_A);

putenv("DATABASE_HOST=org1-database");
$objProtocoloFixture = new ProtocoloFixture();
$objProtocoloDTO = $objProtocoloFixture->buscar([
'ProtocoloFormatado' => self::$processoTeste['PROTOCOLO'],
])[0];

$this->cadastrarDocumentoExternoFixture($documentoTesteExterno, $objProtocoloDTO->getDblIdProtocolo());

$this->acessarSistema($remetente['URL'], $remetente['SIGLA_UNIDADE'], $remetente['LOGIN'], $remetente['SENHA']);
$this->abrirProcesso(self::$processoTeste['PROTOCOLO']);
$novosDocumentos = array($documentoTesteExterno);
$this->realizarTramiteExternoComValidacaoNoRemetenteFixture(self::$processoTeste, $novosDocumentos, $remetente, $destinatario);

$this->tramitarProcessoExternamente(
self::$processoTeste['PROTOCOLO'], $destinatario['REP_ESTRUTURAS'], $destinatario['NOME_UNIDADE'],
$destinatario['SIGLA_UNIDADE_HIERARQUIA'], false
);

$this->waitUntil(function ($testCase) use (&$orgaosDiferentes) {
sleep(5);
$this->atualizarTramitesPEN();
$testCase->refresh();
$paginaProcesso = new PaginaProcesso($testCase);
$testCase->assertStringNotContainsString(utf8_encode("Processo em trâmite externo para "), $paginaProcesso->informacao());
$testCase->assertFalse($paginaProcesso->processoAberto());
$testCase->assertEquals($orgaosDiferentes, $paginaProcesso->processoBloqueado());
return true;
}, PEN_WAIT_TIMEOUT);

// 7 - Validar se recibo de trâmite foi armazenado para o processo (envio e conclusão)
$unidade = mb_convert_encoding($destinatario['NOME_UNIDADE'], "ISO-8859-1");
$mensagemRecibo = sprintf("Trâmite externo do Processo %s para %s", self::$processoTeste['PROTOCOLO'], $unidade);
$this->validarRecibosTramite($mensagemRecibo, true, true);

// 8 - Validar histórico de trâmite do processo
$this->validarHistoricoTramite($destinatario['NOME_UNIDADE'], true, true);

// 9 - Verificar se processo está na lista de Processos Tramitados Externamente
$this->validarProcessosTramitados(self::$processoTeste['PROTOCOLO'], $orgaosDiferentes);

self::$totalDocumentos = array_merge(self::$totalDocumentos, array($documentoTesteExterno));
$this->realizarValidacaoRecebimentoProcessoNoDestinatario(self::$processoTeste, self::$totalDocumentos, $destinatario);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
<?php

use \utilphp\util;
use Tests\Funcional\Sei\Fixtures\{ProtocoloFixture,ProcedimentoFixture,AtividadeFixture,ParticipanteFixture,RelProtocoloAssuntoFixture,AtributoAndamentoFixture,DocumentoFixture,AssinaturaFixture};

/**
* Execution Groups
Expand Down Expand Up @@ -100,46 +99,9 @@ public function test_devolucao_processo_para_origem()
$documentoTeste1 = $this->gerarDadosDocumentoInternoTeste($remetente);
$documentoTeste2 = $this->gerarDadosDocumentoExternoTeste($remetente);

$objProtocoloFixture = new ProtocoloFixture();
$objProtocoloDTO = $objProtocoloFixture->buscar([
'ProtocoloFormatado' => self::$processoTeste['PROTOCOLO'],
])[0];
$novosDocumentos = array($documentoTeste1, $documentoTeste2);
$this->realizarTramiteExternoComValidacaoNoRemetenteFixture(self::$processoTeste, $novosDocumentos, $remetente, $destinatario);

$this->cadastrarDocumentoInternoFixture($documentoTeste1, $objProtocoloDTO->getDblIdProtocolo());
$this->cadastrarDocumentoExternoFixture($documentoTeste2, $objProtocoloDTO->getDblIdProtocolo());

$this->acessarSistema($remetente['URL'], $remetente['SIGLA_UNIDADE'], $remetente['LOGIN'], $remetente['SENHA']);
$this->abrirProcesso(self::$processoTeste['PROTOCOLO']);

$this->tramitarProcessoExternamente(
self::$processoTeste['PROTOCOLO'], $destinatario['REP_ESTRUTURAS'], $destinatario['NOME_UNIDADE'],
$destinatario['SIGLA_UNIDADE_HIERARQUIA'], false
);

$this->waitUntil(function ($testCase) use (&$orgaosDiferentes) {
sleep(5);
$this->atualizarTramitesPEN();
$testCase->refresh();
$paginaProcesso = new PaginaProcesso($testCase);
$testCase->assertStringNotContainsString(utf8_encode("Processo em trâmite externo para "), $paginaProcesso->informacao());
$testCase->assertFalse($paginaProcesso->processoAberto());
$testCase->assertEquals($orgaosDiferentes, $paginaProcesso->processoBloqueado());
return true;
}, PEN_WAIT_TIMEOUT);

// 7 - Validar se recibo de trâmite foi armazenado para o processo (envio e conclusão)
$unidade = mb_convert_encoding($destinatario['NOME_UNIDADE'], "ISO-8859-1");
$mensagemRecibo = sprintf("Trâmite externo do Processo %s para %s", self::$processoTeste['PROTOCOLO'], $unidade);
$this->validarRecibosTramite($mensagemRecibo, true, true);

// 8 - Validar histórico de trâmite do processo
$this->validarHistoricoTramite($destinatario['NOME_UNIDADE'], true, true);

// 9 - Verificar se processo está na lista de Processos Tramitados Externamente
$this->validarProcessosTramitados(self::$processoTeste['PROTOCOLO'], $orgaosDiferentes);

$totalDdocumentos = array(self::$documentoZip, $documentoTeste1, $documentoTeste2);
$this->realizarValidacaoRecebimentoProcessoNoDestinatario(self::$processoTeste, $totalDdocumentos, $destinatario);
}

/**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
<?php

use \utilphp\util;
use Tests\Funcional\Sei\Fixtures\{ProtocoloFixture,ProcedimentoFixture,AtividadeFixture,ParticipanteFixture,RelProtocoloAssuntoFixture,AtributoAndamentoFixture,DocumentoFixture,AssinaturaFixture};

class TramiteRecebimentoMultiplosComponentesDigitaisApenasPendentes extends FixtureCenarioBaseTestCase
{
Expand Down Expand Up @@ -91,47 +90,12 @@ public function test_devolucao_processo_para_origem_1()
// Configuração do dados para teste do cenário
$remetente = self::$contextoOrgaoB;
$destinatario = self::$contextoOrgaoA;
$orgaosDiferentes = $remetente['URL'] != $destinatario['URL'];

$documentoTesteInterno = $this->gerarDadosDocumentoInternoTeste($remetente);

putenv("DATABASE_HOST=org2-database");
$objProtocoloFixture = new ProtocoloFixture();
$objProtocoloDTO = $objProtocoloFixture->buscar([
'ProtocoloFormatado' => self::$processoTeste['PROTOCOLO'],
])[0];

$this->cadastrarDocumentoInternoFixture($documentoTesteInterno, $objProtocoloDTO->getDblIdProtocolo());

$this->acessarSistema($remetente['URL'], $remetente['SIGLA_UNIDADE'], $remetente['LOGIN'], $remetente['SENHA']);
$this->abrirProcesso(self::$processoTeste['PROTOCOLO']);

$this->tramitarProcessoExternamente(
self::$processoTeste['PROTOCOLO'], $destinatario['REP_ESTRUTURAS'], $destinatario['NOME_UNIDADE'],
$destinatario['SIGLA_UNIDADE_HIERARQUIA'], false
);

$this->waitUntil(function ($testCase) use (&$orgaosDiferentes) {
sleep(5);
$this->atualizarTramitesPEN();
$testCase->refresh();
$paginaProcesso = new PaginaProcesso($testCase);
$testCase->assertStringNotContainsString(utf8_encode("Processo em trâmite externo para "), $paginaProcesso->informacao());
$testCase->assertFalse($paginaProcesso->processoAberto());
$testCase->assertEquals($orgaosDiferentes, $paginaProcesso->processoBloqueado());
return true;
}, PEN_WAIT_TIMEOUT);

// 7 - Validar se recibo de trâmite foi armazenado para o processo (envio e conclusão)
$unidade = mb_convert_encoding($destinatario['NOME_UNIDADE'], "ISO-8859-1");
$mensagemRecibo = sprintf("Trâmite externo do Processo %s para %s", self::$processoTeste['PROTOCOLO'], $unidade);
$this->validarRecibosTramite($mensagemRecibo, true, true);

// 8 - Validar histórico de trâmite do processo
$this->validarHistoricoTramite($destinatario['NOME_UNIDADE'], true, true);

// 9 - Verificar se processo está na lista de Processos Tramitados Externamente
$this->validarProcessosTramitados(self::$processoTeste['PROTOCOLO'], $orgaosDiferentes);
$novosDocumentos = array($documentoTesteInterno);
$this->realizarTramiteExternoComValidacaoNoRemetenteFixture(self::$processoTeste, $novosDocumentos, $remetente, $destinatario);

self::$totalDocumentos = array_merge(self::$totalDocumentos, array($documentoTesteInterno));
$this->realizarValidacaoRecebimentoProcessoNoDestinatario(self::$processoTeste, self::$totalDocumentos, $destinatario);
Expand All @@ -154,43 +118,9 @@ public function test_devolucao_processo_para_destino_2()
$documentoTesteExterno = $this->gerarDadosDocumentoExternoTeste($remetente, self::CONTEUDO_DOCUMENTO_A);

putenv("DATABASE_HOST=org1-database");
$objProtocoloFixture = new ProtocoloFixture();
$objProtocoloDTO = $objProtocoloFixture->buscar([
'ProtocoloFormatado' => self::$processoTeste['PROTOCOLO'],
])[0];

$this->cadastrarDocumentoExternoFixture($documentoTesteExterno, $objProtocoloDTO->getDblIdProtocolo());

$this->acessarSistema($remetente['URL'], $remetente['SIGLA_UNIDADE'], $remetente['LOGIN'], $remetente['SENHA']);
$this->abrirProcesso(self::$processoTeste['PROTOCOLO']);
$novosDocumentos = array($documentoTesteExterno);
$this->realizarTramiteExternoComValidacaoNoRemetenteFixture(self::$processoTeste, $novosDocumentos, $remetente, $destinatario);

$this->tramitarProcessoExternamente(
self::$processoTeste['PROTOCOLO'], $destinatario['REP_ESTRUTURAS'], $destinatario['NOME_UNIDADE'],
$destinatario['SIGLA_UNIDADE_HIERARQUIA'], false
);

$this->waitUntil(function ($testCase) use (&$orgaosDiferentes) {
sleep(5);
$this->atualizarTramitesPEN();
$testCase->refresh();
$paginaProcesso = new PaginaProcesso($testCase);
$testCase->assertStringNotContainsString(utf8_encode("Processo em trâmite externo para "), $paginaProcesso->informacao());
$testCase->assertFalse($paginaProcesso->processoAberto());
$testCase->assertEquals($orgaosDiferentes, $paginaProcesso->processoBloqueado());
return true;
}, PEN_WAIT_TIMEOUT);

// 7 - Validar se recibo de trâmite foi armazenado para o processo (envio e conclusão)
$unidade = mb_convert_encoding($destinatario['NOME_UNIDADE'], "ISO-8859-1");
$mensagemRecibo = sprintf("Trâmite externo do Processo %s para %s", self::$processoTeste['PROTOCOLO'], $unidade);
$this->validarRecibosTramite($mensagemRecibo, true, true);

// 8 - Validar histórico de trâmite do processo
$this->validarHistoricoTramite($destinatario['NOME_UNIDADE'], true, true);

// 9 - Verificar se processo está na lista de Processos Tramitados Externamente
$this->validarProcessosTramitados(self::$processoTeste['PROTOCOLO'], $orgaosDiferentes);

self::$totalDocumentos = array_merge(self::$totalDocumentos, array($documentoTesteExterno));
$this->realizarValidacaoRecebimentoProcessoNoDestinatario(self::$processoTeste, self::$totalDocumentos, $destinatario);
}
Expand Down
Loading

0 comments on commit 6e61ad1

Please sign in to comment.