forked from pengovbr/mod-sei-pen
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: adicionado teste que valida status de conclusao do tramite em b…
…loco (super)
- Loading branch information
Paul Richard Pereira Martins dos Anjos
committed
Oct 9, 2024
1 parent
616b930
commit 392ea79
Showing
1 changed file
with
245 additions
and
0 deletions.
There are no files selected for viewing
245 changes: 245 additions & 0 deletions
245
tests_super/funcional/tests/TramiteBlocoDeTramiteSituacaoProcessoConcluidoTest.php
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,245 @@ | ||
<?php | ||
|
||
use Tests\Funcional\Sei\Fixtures\{ProtocoloFixture,ProcedimentoFixture,AtividadeFixture,ContatoFixture,ParticipanteFixture,RelProtocoloAssuntoFixture,AtributoAndamentoFixture,DocumentoFixture,AssinaturaFixture,AnexoFixture,AnexoProcessoFixture}; | ||
|
||
/** | ||
* | ||
* Execution Groups | ||
* @group execute_parallel_group1 | ||
*/ | ||
class TramiteBlocoDeTramiteSituacaoProcessoConcluidoTest extends FixtureCenarioBaseTestCase | ||
{ | ||
public static $remetente; | ||
public static $destinatario; | ||
|
||
|
||
/** | ||
* Teste pra validar mensagem de documento não assinado ao ser inserido em bloco | ||
* | ||
* @group envio | ||
* @large | ||
* | ||
* @return void | ||
*/ | ||
public function test_validar_situacao_do_processo_no_bloco_status6() | ||
{ | ||
self::$remetente = $this->definirContextoTeste(CONTEXTO_ORGAO_A); | ||
self::$destinatario = $this->definirContextoTeste(CONTEXTO_ORGAO_B); | ||
$processoTeste = $this->gerarDadosProcessoTeste(self::$remetente); | ||
$documentoTeste = $this->gerarDadosDocumentoInternoTeste(self::$remetente); | ||
|
||
// Cadastrar novo processo de teste | ||
$objProtocoloDTO = $this->cadastrarProcessoFixture($processoTeste); | ||
$this->cadastrarDocumentoInternoFixture($documentoTeste, $objProtocoloDTO->getDblIdProtocolo()); | ||
|
||
$objBlocoDeTramiteFixture = new \BlocoDeTramiteFixture(); | ||
$objBlocoDeTramiteDTO = $objBlocoDeTramiteFixture->carregar(); | ||
|
||
$objBlocoDeTramiteProtocoloFixture = new \BlocoDeTramiteProtocoloFixture(); | ||
$objBlocoDeTramiteProtocoloFixtureDTO = $objBlocoDeTramiteProtocoloFixture->carregar([ | ||
'IdProtocolo' => $objProtocoloDTO->getDblIdProtocolo(), | ||
'IdBloco' => $objBlocoDeTramiteDTO->getNumId() | ||
]); | ||
|
||
$this->acessarSistema(self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], self::$remetente['LOGIN'], self::$remetente['SENHA']); | ||
|
||
$this->paginaCadastrarProcessoEmBloco->navegarListagemBlocoDeTramite(); | ||
$this->paginaCadastrarProcessoEmBloco->bntTramitarBloco(); | ||
$this->paginaCadastrarProcessoEmBloco->tramitarProcessoExternamente( | ||
self::$destinatario['REP_ESTRUTURAS'], self::$destinatario['NOME_UNIDADE'], | ||
self::$destinatario['SIGLA_UNIDADE_HIERARQUIA'], false, | ||
function ($testCase) { | ||
try { | ||
$testCase->frame('ifrEnvioProcesso'); | ||
$mensagemSucesso = mb_convert_encoding('Processo(s) aguardando envio. Favor acompanhar a tramitação por meio do bloco, na funcionalidade \'Blocos de Trâmite Externo\'', 'UTF-8', 'ISO-8859-1'); | ||
$testCase->assertStringContainsString($mensagemSucesso, $testCase->byCssSelector('body')->text()); | ||
$btnFechar = $testCase->byXPath("//input[@id='btnFechar']"); | ||
$btnFechar->click(); | ||
} finally { | ||
try { | ||
$testCase->frame(null); | ||
$testCase->frame("ifrVisualizacao"); | ||
} catch (Exception $e) { | ||
} | ||
} | ||
|
||
return true; | ||
} | ||
); | ||
|
||
$this->waitUntil(function ($testCase) use ($objProtocoloDTO) { | ||
sleep(5); | ||
$testCase->refresh(); | ||
|
||
$colunaEstado = $testCase->elements($testCase->using('xpath')->value('//table[@id="tblBlocos"]/tbody/tr/td[3]')); | ||
$this->assertEquals(utf8_encode("Concluído"), $colunaEstado[0]->text()); | ||
|
||
$objPenBlocoProcessoDTO = new \PenBlocoProcessoDTO(); | ||
$objPenBlocoProcessoDTO->setDblIdProtocolo($objProtocoloDTO->getDblIdProtocolo()); | ||
$objPenBlocoProcessoDTO->retNumIdAndamento(); | ||
$objPenBlocoProcessoDTO->setNumMaxRegistrosRetorno(1); | ||
|
||
$objBD = new \PenBlocoProcessoBD(\BancoSEI::getInstance()); | ||
$objPenBlocoProcesso = $objBD->consultar($objPenBlocoProcessoDTO); | ||
|
||
$this->assertEquals(6, $objPenBlocoProcesso->getNumIdAndamento()); | ||
return true; | ||
}, PEN_WAIT_TIMEOUT); | ||
} | ||
|
||
/** | ||
* Teste pra validar mensagem de documento não assinado ao ser inserido em bloco | ||
* | ||
* @group envio | ||
* @large | ||
* | ||
* @return void | ||
*/ | ||
public function test_validar_situacao_do_processo_no_bloco_status7() | ||
{ | ||
self::$remetente = $this->definirContextoTeste(CONTEXTO_ORGAO_A); | ||
self::$destinatario = $this->definirContextoTeste(CONTEXTO_ORGAO_B); | ||
$processoTeste = $this->gerarDadosProcessoTeste(self::$remetente); | ||
$documentoTeste = $this->gerarDadosDocumentoInternoTeste(self::$remetente); | ||
|
||
// Cadastrar novo processo de teste | ||
$objProtocoloDTO = $this->cadastrarProcessoFixture($processoTeste); | ||
$this->cadastrarDocumentoInternoFixture($documentoTeste, $objProtocoloDTO->getDblIdProtocolo()); | ||
|
||
$objBlocoDeTramiteFixture = new \BlocoDeTramiteFixture(); | ||
$objBlocoDeTramiteDTO = $objBlocoDeTramiteFixture->carregar(); | ||
|
||
$objBlocoDeTramiteProtocoloFixture = new \BlocoDeTramiteProtocoloFixture(); | ||
$objBlocoDeTramiteProtocoloFixtureDTO = $objBlocoDeTramiteProtocoloFixture->carregar([ | ||
'IdProtocolo' => $objProtocoloDTO->getDblIdProtocolo(), | ||
'IdBloco' => $objBlocoDeTramiteDTO->getNumId() | ||
]); | ||
|
||
$this->acessarSistema(self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], self::$remetente['LOGIN'], self::$remetente['SENHA']); | ||
|
||
$this->paginaCadastrarProcessoEmBloco->navegarListagemBlocoDeTramite(); | ||
$this->paginaCadastrarProcessoEmBloco->bntTramitarBloco(); | ||
$this->paginaCadastrarProcessoEmBloco->tramitarProcessoExternamente( | ||
self::$destinatario['REP_ESTRUTURAS'], self::$destinatario['NOME_UNIDADE'], | ||
self::$destinatario['SIGLA_UNIDADE_HIERARQUIA'], false, | ||
function ($testCase) { | ||
try { | ||
$testCase->frame('ifrEnvioProcesso'); | ||
$mensagemSucesso = mb_convert_encoding('Processo(s) aguardando envio. Favor acompanhar a tramitação por meio do bloco, na funcionalidade \'Blocos de Trâmite Externo\'', 'UTF-8', 'ISO-8859-1'); | ||
$testCase->assertStringContainsString($mensagemSucesso, $testCase->byCssSelector('body')->text()); | ||
$btnFechar = $testCase->byXPath("//input[@id='btnFechar']"); | ||
$btnFechar->click(); | ||
} finally { | ||
try { | ||
$testCase->frame(null); | ||
$testCase->frame("ifrVisualizacao"); | ||
} catch (Exception $e) { | ||
} | ||
} | ||
|
||
return true; | ||
} | ||
); | ||
|
||
$this->paginaBase->navegarParaControleProcesso(); | ||
$this->abrirProcesso($objProtocoloDTO->getStrProtocoloFormatado()); | ||
$this->paginaProcesso->cancelarTramitacaoExterna(); | ||
$this->paginaTramitar->alertTextAndClose(true); | ||
|
||
$this->paginaBase->navegarParaControleProcesso(); | ||
$this->paginaCadastrarProcessoEmBloco->navegarListagemBlocoDeTramite(); | ||
$this->waitUntil(function ($testCase) use ($objProtocoloDTO) { | ||
sleep(5); | ||
$testCase->refresh(); | ||
|
||
$colunaEstado = $testCase->elements($testCase->using('xpath')->value('//table[@id="tblBlocos"]/tbody/tr/td[3]')); | ||
$this->assertEquals(utf8_encode("Concluído"), $colunaEstado[0]->text()); | ||
|
||
$objPenBlocoProcessoDTO = new \PenBlocoProcessoDTO(); | ||
$objPenBlocoProcessoDTO->setDblIdProtocolo($objProtocoloDTO->getDblIdProtocolo()); | ||
$objPenBlocoProcessoDTO->retNumIdAndamento(); | ||
$objPenBlocoProcessoDTO->setNumMaxRegistrosRetorno(1); | ||
|
||
$objBD = new \PenBlocoProcessoBD(\BancoSEI::getInstance()); | ||
$objPenBlocoProcesso = $objBD->consultar($objPenBlocoProcessoDTO); | ||
|
||
$this->assertEquals(7, $objPenBlocoProcesso->getNumIdAndamento()); | ||
return true; | ||
}, PEN_WAIT_TIMEOUT); | ||
} | ||
|
||
/** | ||
* Teste pra validar mensagem de documento não assinado ao ser inserido em bloco | ||
* | ||
* @group envio | ||
* @large | ||
* | ||
* @return void | ||
*/ | ||
public function test_validar_situacao_do_processo_no_bloco_status9() | ||
{ | ||
self::$remetente = $this->definirContextoTeste(CONTEXTO_ORGAO_A); | ||
self::$destinatario = $this->definirContextoTeste(CONTEXTO_ORGAO_B); | ||
$processoTeste = $this->gerarDadosProcessoTeste(self::$remetente); | ||
$documentoTeste = $this->gerarDadosDocumentoExternoTeste($remetente, 'arquivo_extensao_nao_permitida.docx'); | ||
|
||
// Cadastrar novo processo de teste | ||
$objProtocoloDTO = $this->cadastrarProcessoFixture($processoTeste); | ||
$this->cadastrarDocumentoExternoFixture($documentoTeste, $objProtocoloDTO->getDblIdProtocolo()); | ||
|
||
$objBlocoDeTramiteFixture = new \BlocoDeTramiteFixture(); | ||
$objBlocoDeTramiteDTO = $objBlocoDeTramiteFixture->carregar(); | ||
|
||
$objBlocoDeTramiteProtocoloFixture = new \BlocoDeTramiteProtocoloFixture(); | ||
$objBlocoDeTramiteProtocoloFixtureDTO = $objBlocoDeTramiteProtocoloFixture->carregar([ | ||
'IdProtocolo' => $objProtocoloDTO->getDblIdProtocolo(), | ||
'IdBloco' => $objBlocoDeTramiteDTO->getNumId() | ||
]); | ||
|
||
$this->acessarSistema(self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], self::$remetente['LOGIN'], self::$remetente['SENHA']); | ||
|
||
$this->paginaCadastrarProcessoEmBloco->navegarListagemBlocoDeTramite(); | ||
$this->paginaCadastrarProcessoEmBloco->bntTramitarBloco(); | ||
$this->paginaCadastrarProcessoEmBloco->tramitarProcessoExternamente( | ||
self::$destinatario['REP_ESTRUTURAS'], self::$destinatario['NOME_UNIDADE'], | ||
self::$destinatario['SIGLA_UNIDADE_HIERARQUIA'], false, | ||
function ($testCase) { | ||
try { | ||
$testCase->frame('ifrEnvioProcesso'); | ||
$mensagemSucesso = mb_convert_encoding('Processo(s) aguardando envio. Favor acompanhar a tramitação por meio do bloco, na funcionalidade \'Blocos de Trâmite Externo\'', 'UTF-8', 'ISO-8859-1'); | ||
$testCase->assertStringContainsString($mensagemSucesso, $testCase->byCssSelector('body')->text()); | ||
$btnFechar = $testCase->byXPath("//input[@id='btnFechar']"); | ||
$btnFechar->click(); | ||
} finally { | ||
try { | ||
$testCase->frame(null); | ||
$testCase->frame("ifrVisualizacao"); | ||
} catch (Exception $e) { | ||
} | ||
} | ||
|
||
return true; | ||
} | ||
); | ||
|
||
$this->waitUntil(function ($testCase) use ($objProtocoloDTO) { | ||
sleep(5); | ||
$testCase->refresh(); | ||
|
||
$colunaEstado = $testCase->elements($testCase->using('xpath')->value('//table[@id="tblBlocos"]/tbody/tr/td[3]')); | ||
$this->assertEquals(utf8_encode("Concluído"), $colunaEstado[0]->text()); | ||
|
||
$objPenBlocoProcessoDTO = new \PenBlocoProcessoDTO(); | ||
$objPenBlocoProcessoDTO->setDblIdProtocolo($objProtocoloDTO->getDblIdProtocolo()); | ||
$objPenBlocoProcessoDTO->retNumIdAndamento(); | ||
$objPenBlocoProcessoDTO->setNumMaxRegistrosRetorno(1); | ||
|
||
$objBD = new \PenBlocoProcessoBD(\BancoSEI::getInstance()); | ||
$objPenBlocoProcesso = $objBD->consultar($objPenBlocoProcessoDTO); | ||
|
||
$this->assertEquals(9, $objPenBlocoProcesso->getNumIdAndamento()); | ||
return true; | ||
}, PEN_WAIT_TIMEOUT); | ||
} | ||
|
||
} |