diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 1d88f425a..78e606e54 100755 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -39,6 +39,6 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: dist/mod-sei-pen-${{ steps.get_version.outputs.VERSION }}.zip - asset_name: mod-sei-pen-${{ steps.get_version.outputs.VERSION }}.zip + asset_path: dist/mod-sei-tramitagovbr-${{ steps.get_version.outputs.VERSION }}.zip + asset_name: mod-sei-tramitagovbr-${{ steps.get_version.outputs.VERSION }}.zip asset_content_type: application/zip diff --git a/docs/changelogs/CHANGELOG-3.6.1.md b/docs/changelogs/CHANGELOG-3.6.1.md new file mode 100644 index 000000000..e1302a35c --- /dev/null +++ b/docs/changelogs/CHANGELOG-3.6.1.md @@ -0,0 +1,63 @@ +# NOTAS DE VERSÃO MOD-SEI-PEN (versão 3.6.1) + +Este documento descreve as principais mudanças aplicadas nesta versão do módulo de integração do SEI com o TRAMITA.GOV.BR. + +As melhorias entregues em cada uma das versões são cumulativas, ou seja, contêm todas as implementações realizadas em versões anteriores. + +## Compatibilidade de versões +* O módulo é compatível com as seguintes versões do **SEI**: + * 4.0.0 até 4.0.12, + * 4.1.1 e 4.1.2. + +Para maiores informações sobre os procedimentos de instalação ou atualização, acesse os seguintes documentos localizados no pacote de distribuição mod-sei-pen-VERSAO.zip: +> Atenção: É impreterível seguir rigorosamente o disposto no README.md do Módulo para instalação ou atualização com sucesso. +* **INSTALACAO.md** - Procedimento de instalação e configuração do módulo +* **ATUALIZACAO.md** - Procedimento específicos para atualização de uma versão anterior + +### Lista de melhorias e correções de problemas + +Todas as atualizações podem incluir itens referentes à segurança, requisito em permanente monitoramento e evolução, motivo pelo qual a atualização com a maior brevidade possível é sempre recomendada. + +#### Remoção do item Processos tramitados em Bloco + +No menu principal foi removido do item 'Tramita GOV.BR': + +'Processos tramitados em Bloco'. + +#### Correção de instalação da 3.5.0 ou anteriores para 3.6.X + +Corrigido bug 'Menu Tramita GOV.BR não localizado' ao fazer upgrade do módulo. + +### Atualização de Versão + +Para obter informações detalhadas sobre cada um dos passos de atualização, vide arquivo **ATUALIZACAO.md**. + +#### Instruções + +1. Baixar a última versão do módulo de instalação do sistema (arquivo `mod-sei-tramitagovbr-[VERSÃO].zip`) localizado na página de [Releases do projeto MOD-SEI-PEN](https://github.com/spbgovbr/mod-sei-pen/releases), seção **Assets**. _Somente usuários autorizados previamente pela Coordenação-Geral do Processo Eletrônico Nacional podem ter acesso às versões._ + +2. Fazer backup dos diretórios "sei", "sip" e "infra" do servidor web; + +3. Descompactar o pacote de instalação `mod-sei-tramitagovbr-[VERSÃO].zip`; + +4. Copiar os diretórios descompactados "sei", "sip" para os servidores, sobrescrevendo os arquivos existentes; + +5. Executar o script de instalação/atualização `sei_atualizar_versao_modulo_pen.php` do módulo para o SEI localizado no diretório `sei/scripts/mod-pen/` + +```bash +php -c /etc/php.ini /sei/scripts/mod-pen/sei_atualizar_versao_modulo_pen.php +``` + +6. Executar o script de instalação/atualização `sip_atualizar_versao_modulo_pen.php` do módulo para o SIP localizado no diretório `sip/scripts/mod-pen/` + +```bash +php -c /etc/php.ini /sip/scripts/mod-pen/sip_atualizar_versao_modulo_pen.php +``` + +7. Verificar a correta instalação e configuração do módulo + +Para executar a verificação, execute o script ```verifica_instalacao_modulo_pen.php``` localizado no diretório de scripts do SEI ```/sei/scripts/mod-pen/```. + +```bash +$ php -c /etc/php.ini /sei/scripts/mod-pen/verifica_instalacao_modulo_pen.php +``` diff --git a/docs/changelogs/CHANGELOG-3.6.2.md b/docs/changelogs/CHANGELOG-3.6.2.md new file mode 100644 index 000000000..6864efd5d --- /dev/null +++ b/docs/changelogs/CHANGELOG-3.6.2.md @@ -0,0 +1,58 @@ +# NOTAS DE VERSÃO MOD-SEI-PEN (versão 3.6.2) + +Este documento descreve as principais mudanças aplicadas nesta versão do módulo de integração do SEI com o TRAMITA.GOV.BR. + +As melhorias entregues em cada uma das versões são cumulativas, ou seja, contêm todas as implementações realizadas em versões anteriores. + +## Compatibilidade de versões +* O módulo é compatível com as seguintes versões do **SEI**: + * 4.0.0 até 4.0.12, + * 4.1.1 e 4.1.2. + +Para maiores informações sobre os procedimentos de instalação ou atualização, acesse os seguintes documentos localizados no pacote de distribuição mod-sei-pen-VERSAO.zip: +> Atenção: É impreterível seguir rigorosamente o disposto no README.md do Módulo para instalação ou atualização com sucesso. +* **INSTALACAO.md** - Procedimento de instalação e configuração do módulo +* **ATUALIZACAO.md** - Procedimento específicos para atualização de uma versão anterior + +### Lista de melhorias e correções de problemas + +Todas as atualizações podem incluir itens referentes à segurança, requisito em permanente monitoramento e evolução, motivo pelo qual a atualização com a maior brevidade possível é sempre recomendada. + +#### Atribuição do recurso pen_map_envio_parcial_listar para o perfil básico de usuário (https://github.com/pengovbr/mod-sei-pen/issues/504). + +Automatização da atribuição do recurso pen_map_envio_parcial_listar para o perfil básico de usuário, no ato da instalação. +Correção do seguinte erro:"Acesso negado a este recurso nesta unidade (pen_map_envio_parcial_listar / GAB-ZZZ).". + +### Atualização de Versão + +Para obter informações detalhadas sobre cada um dos passos de atualização, vide arquivo **ATUALIZACAO.md**. + +#### Instruções + +1. Baixar a última versão do módulo de instalação do sistema (arquivo `mod-sei-tramitagovbr-[VERSÃO].zip`) localizado na página de [Releases do projeto MOD-SEI-PEN](https://github.com/spbgovbr/mod-sei-pen/releases), seção **Assets**. _Somente usuários autorizados previamente pela Coordenação-Geral do Processo Eletrônico Nacional podem ter acesso às versões._ + +2. Fazer backup dos diretórios "sei", "sip" e "infra" do servidor web; + +3. Descompactar o pacote de instalação `mod-sei-tramitagovbr-[VERSÃO].zip`; + +4. Copiar os diretórios descompactados "sei", "sip" para os servidores, sobrescrevendo os arquivos existentes; + +5. Executar o script de instalação/atualização `sei_atualizar_versao_modulo_pen.php` do módulo para o SEI localizado no diretório `sei/scripts/mod-pen/` + +```bash +php -c /etc/php.ini /sei/scripts/mod-pen/sei_atualizar_versao_modulo_pen.php +``` + +6. Executar o script de instalação/atualização `sip_atualizar_versao_modulo_pen.php` do módulo para o SIP localizado no diretório `sip/scripts/mod-pen/` + +```bash +php -c /etc/php.ini /sip/scripts/mod-pen/sip_atualizar_versao_modulo_pen.php +``` + +7. Verificar a correta instalação e configuração do módulo + +Para executar a verificação, execute o script ```verifica_instalacao_modulo_pen.php``` localizado no diretório de scripts do SEI ```/sei/scripts/mod-pen/```. + +```bash +$ php -c /etc/php.ini /sei/scripts/mod-pen/verifica_instalacao_modulo_pen.php +``` diff --git a/src/PENIntegracao.php b/src/PENIntegracao.php index 0db720c19..c5bfcc816 100755 --- a/src/PENIntegracao.php +++ b/src/PENIntegracao.php @@ -1,7 +1,7 @@ validarAuditarPermissao('email_sistema_excluir', __METHOD__, $arrObjEmailSistemaDTO); + $objBD = new PenHipoteseLegalBD($this->inicializarObjInfraIBanco()); + return $objBD->listar($objDTO); + } catch (Exception $e) { + throw new InfraException('Erro ao buscar lista de hipotese legal.', $e); + } + } + + /** + * Método para consultar hipotese legal + * + * @param PenHipoteseLegalDTO $objDTO + * @return PenHipoteseLegalDTO + * @throws InfraException + */ + protected function consultarConectado(PenHipoteseLegalDTO $objDTO) + { try { - //SessaoSEI::getInstance()->validarAuditarPermissao('email_sistema_excluir', __METHOD__, $arrObjEmailSistemaDTO); - $objBD = new GenericoBD($this->inicializarObjInfraIBanco()); - return $objBD->listar($objDTO); - } - catch (Exception $e) { - throw new InfraException('Erro excluindo E-mail do Sistema.', $e); + $objBD = new PenHipoteseLegalBD($this->inicializarObjInfraIBanco()); + return $objBD->consultar($objDTO); + } catch (Exception $e) { + throw new InfraException('Erro ao buscar hipotese legal', $e); } } } diff --git a/src/rn/ProcessoEletronicoRN.php b/src/rn/ProcessoEletronicoRN.php index cc4d8586a..9167bf2ae 100755 --- a/src/rn/ProcessoEletronicoRN.php +++ b/src/rn/ProcessoEletronicoRN.php @@ -1910,8 +1910,12 @@ public function isDisponivelCancelarTramite($strProtocolo = '') public function consultarHipotesesLegais() { try{ - $hipoteses = $this->tentarNovamenteSobErroHTTP(function($objPenWs) { - return $objPenWs->consultarHipotesesLegais(); + $parametros = new stdClass(); + $parametros->filtroDeHipotesesLegais = new stdClass(); + $parametros->filtroDeHipotesesLegais->ativos = true; + + $hipoteses = $this->tentarNovamenteSobErroHTTP(function($objPenWs) use ($parametros) { + return $objPenWs->consultarHipotesesLegais($parametros); }); if (empty($hipoteses)) { diff --git a/src/scripts/sei_atualizar_versao_modulo_pen.php b/src/scripts/sei_atualizar_versao_modulo_pen.php index c5715ff69..d147e8d7c 100755 --- a/src/scripts/sei_atualizar_versao_modulo_pen.php +++ b/src/scripts/sei_atualizar_versao_modulo_pen.php @@ -278,6 +278,10 @@ protected function atualizarVersaoConectado() case '3.5.0': $this->instalarV3060(); case '3.6.0': + $this->instalarV3061(); + case '3.6.1': + $this->instalarV3062(); + case '3.6.2': $this->instalarV3070(); break; // Ausência de [break;] proposital para realizar a atualização incremental de versões @@ -2787,8 +2791,55 @@ protected function instalarV3060() $this->atualizarNumeroVersao("3.6.0"); } - protected function instalarV3070(){ - $this->atualizarNumeroVersao("3.7.0"); + protected function instalarV3061(){ + $this->atualizarNumeroVersao("3.6.1"); + } + + protected function instalarV3062(){ + $this->atualizarNumeroVersao("3.6.2"); + } + + protected function instalarV3070() + { + $hipoteseLegalDTO = new HipoteseLegalDTO(); + $hipoteseLegalDTO->setStrSinAtivo('S'); + $hipoteseLegalDTO->retStrNome(); + $hipoteseLegalDTO->retNumIdHipoteseLegal(); + + $hipoteseLegalRN = new HipoteseLegalRN(); + $arrHipoteseLegal = $hipoteseLegalRN->listar($hipoteseLegalDTO); + + $penHipoteseLegalRN = new PenHipoteseLegalRN(); + + foreach ($arrHipoteseLegal as $hipoteseLegal) { + $penHipoteseLegal = new PenHipoteseLegalDTO(); + $penHipoteseLegal->setStrNome($hipoteseLegal->getStrNome()); + $penHipoteseLegal->setStrAtivo('S'); + $penHipoteseLegal->retStrNome(); + $penHipoteseLegal->retNumIdHipoteseLegal(); + + $penHipoteseLegal = $penHipoteseLegalRN->consultar($penHipoteseLegal); + + if ($penHipoteseLegal) { + $penRelHipoteseLegal = new PenRelHipoteseLegalDTO(); + $penRelHipoteseLegal->setNumIdHipoteseLegal($hipoteseLegal->getNumIdHipoteseLegal()); + $penRelHipoteseLegal->setNumIdBarramento($penHipoteseLegal->getNumIdHipoteseLegal()); + $penRelHipoteseLegal->retDblIdMap(); + $penRelHipoteseLegalEnvioRN = new PenRelHipoteseLegalEnvioRN(); + $penRelHipoteseLegalRecebimentoRN = new PenRelHipoteseLegalEnvioRN(); + + $penRelHipoteseLegal->setStrTipo('R'); + if (!$penRelHipoteseLegalRecebimentoRN->consultar($penRelHipoteseLegal)) { + $penRelHipoteseLegalRecebimentoRN->cadastrar($penRelHipoteseLegal); + } + + $penRelHipoteseLegal->setStrTipo('E'); + if (!$penRelHipoteseLegalEnvioRN->consultar($penRelHipoteseLegal)) { + $penRelHipoteseLegalEnvioRN->cadastrar($penRelHipoteseLegal); + } + } + } + $this->atualizarNumeroVersao('3.7.0'); } } diff --git a/src/scripts/sip_atualizar_versao_modulo_pen.php b/src/scripts/sip_atualizar_versao_modulo_pen.php index 53809883c..7b2d49eaf 100755 --- a/src/scripts/sip_atualizar_versao_modulo_pen.php +++ b/src/scripts/sip_atualizar_versao_modulo_pen.php @@ -295,8 +295,12 @@ protected function atualizarVersaoConectado() case '3.5.0': $this->instalarV3060(); case '3.6.0': + $this->instalarV3061(); + case '3.6.1': + $this->instalarV3062(); + case '3.6.2': $this->instalarV3070(); - + break; // Ausência de [break;] proposital para realizar a atualização incremental de versões default: $this->finalizar('VERSAO DO MÓDULO JÁ CONSTA COMO ATUALIZADA'); @@ -761,7 +765,7 @@ private function instalarV100() $arrObjDTO = $objBD->listar($objDTO); if (!empty($arrObjDTO)) { - $numIdItemMenuPai = $this->criarMenu('Tramita GOV.BR', 0, $numIdItemMenuRoot, $numIdMenu, null, $numIdSistema); + $numIdItemMenuPai = $this->criarMenu('Processo Eletrônico Nacional', 0, $numIdItemMenuRoot, $numIdMenu, null, $numIdSistema); $numIdItemMenuPai = $this->criarMenu('Mapeamento de Tipos de Documento', 10, $numIdItemMenuPai, $numIdMenu, null, $numIdSistema); foreach ($arrObjDTO as $objDTO) { @@ -790,14 +794,14 @@ private function instalarV101() $objItemMenuDTO = new ItemMenuDTO(); $objItemMenuDTO->setNumIdSistema($numIdSistema); $objItemMenuDTO->setNumIdMenu($numIdMenu); - $objItemMenuDTO->setStrRotulo('Tramita GOV.BR'); + $objItemMenuDTO->setStrRotulo('Processo Eletrônico Nacional'); $objItemMenuDTO->setNumMaxRegistrosRetorno(1); $objItemMenuDTO->retNumIdItemMenu(); $objItemMenuDTO = $objItemMenuBD->consultar($objItemMenuDTO); if (empty($objItemMenuDTO)) { - throw new InfraException('Menu "Tramita GOV.BR" não foi localizado'); + throw new InfraException('Menu "Processo Eletrônico Nacional" não foi localizado'); } // Administrao > Mapeamento de Hipóteses Legais de Envio @@ -839,7 +843,7 @@ private function instalarV101() $objDTO = $objBD->consultar($objDTO); if (empty($objDTO)) { - throw new InfraException('Menu "Tramita GOV.BR" não foi localizado'); + throw new InfraException('Menu "Processo Eletrônico Nacional" não foi localizado'); } // Administrao > Mapeamento de Hipóteses Legais de Envio > Envio @@ -874,7 +878,7 @@ private function instalarV101() $objDTO = $objBD->consultar($objDTO); if (empty($objDTO)) { - throw new InfraException('Menu "Tramita GOV.BR" não foi localizado'); + throw new InfraException('Menu "Processo Eletrônico Nacional" não foi localizado'); } $numIdRecurso = $this->criarRecurso('pen_map_hipotese_legal_padrao_cadastrar', 'Acesso ao formulário de cadastro de mapeamento de Hipóteses Legais Padrão', $numIdSistema); @@ -902,14 +906,14 @@ private function instalarV102() $objDTO = new ItemMenuDTO(); $objDTO->setNumIdSistema($numIdSistema); $objDTO->setNumIdMenu($numIdMenu); - $objDTO->setStrRotulo('Tramita GOV.BR'); + $objDTO->setStrRotulo('Processo Eletrônico Nacional'); $objDTO->setNumMaxRegistrosRetorno(1); $objDTO->retNumIdItemMenu(); $objDTO = $objBD->consultar($objDTO); if (empty($objDTO)) { - throw new InfraException('Menu "Tramita GOV.BR" não foi localizado'); + throw new InfraException('Menu "Processo Eletrônico Nacional" não foi localizado'); } // Administrao > Mapeamento de Hipóteses Legais de Envio > Envio @@ -1061,7 +1065,7 @@ private function instalarV103() } //Cadastrar recurso de alteração dos parâmetros - $this->criarRecurso('pen_parametros_configuracao_alterar', 'Alteração de parametros de configuração do módulo Tramita GOV.BR', $numIdSistema); + $this->criarRecurso('pen_parametros_configuracao_alterar', 'Alteração de parametros de configuração do módulo Processo Eletrônico Nacional', $numIdSistema); $this->atualizarNumeroVersao('1.0.3'); } @@ -1450,7 +1454,7 @@ private function instalarV2000_beta1() ScriptSip::adicionarRecursoPerfil($numIdSistemaSei, $numIdPerfilSeiAdministrador, 'pen_map_tipo_doc_recebimento_padrao_atribuir'); ScriptSip::adicionarRecursoPerfil($numIdSistemaSei, $numIdPerfilSeiAdministrador, 'pen_map_tipo_doc_recebimento_padrao_consultar'); - $this->logar('RECONFIGURAÇÃO DE MENUS DE FUNCIONALIDADES DE MAPEAMENTO DE ESPÉCIES DOCUMENTAIS DO TRAMITA GOV.BR'); + $this->logar('RECONFIGURAÇÃO DE MENUS DE FUNCIONALIDADES DE MAPEAMENTO DE ESPÉCIES DOCUMENTAIS DO Processo Eletrônico Nacional'); $numIdPerfilSeiAdministrador = ScriptSip::obterIdPerfil($numIdSistemaSei, "Administrador"); $numIdMenuSEI = ScriptSip::obterIdMenu($numIdSistemaSei, 'Principal'); @@ -1463,7 +1467,7 @@ private function instalarV2000_beta1() } // Recriar item de menu agrupador de mapeamento de tipos de documento - $numIdItemMenuPEN = ScriptSip::obterIdItemMenu($numIdSistemaSei, $numIdMenuSEI, "Tramita GOV.BR"); + $numIdItemMenuPEN = ScriptSip::obterIdItemMenu($numIdSistemaSei, $numIdMenuSEI, "Processo Eletrônico Nacional"); $objItemMenuMapeamentoDTO = ScriptSip::adicionarItemMenu( $numIdSistemaSei, $numIdPerfilSeiAdministrador, @@ -1487,10 +1491,10 @@ private function instalarV2000_beta1() // Redefinir ordem de apresentação dos menus de administração do módulo $arrOrdemMenusAdministracaoPEN = array( - array("rotulo" => "Parâmetros de Configuração", "sequencia" => 10, "rotuloMenuSuperior" => "Tramita GOV.BR"), - array("rotulo" => "Mapeamento de Tipos de Documentos", "sequencia" => 20, "rotuloMenuSuperior" => "Tramita GOV.BR"), - array("rotulo" => "Mapeamento de Unidades", "sequencia" => 30, "rotuloMenuSuperior" => "Tramita GOV.BR"), - array("rotulo" => "Mapeamento de Hipóteses Legais", "sequencia" => 40, "rotuloMenuSuperior" => "Tramita GOV.BR"), + array("rotulo" => "Parâmetros de Configuração", "sequencia" => 10, "rotuloMenuSuperior" => "Processo Eletrônico Nacional"), + array("rotulo" => "Mapeamento de Tipos de Documentos", "sequencia" => 20, "rotuloMenuSuperior" => "Processo Eletrônico Nacional"), + array("rotulo" => "Mapeamento de Unidades", "sequencia" => 30, "rotuloMenuSuperior" => "Processo Eletrônico Nacional"), + array("rotulo" => "Mapeamento de Hipóteses Legais", "sequencia" => 40, "rotuloMenuSuperior" => "Processo Eletrônico Nacional"), ); array_map(function ($item) use ($numIdSistemaSei, $numIdMenuSEI) { @@ -1878,14 +1882,14 @@ protected function instalarV3050() $objItemMenuDTO = new ItemMenuDTO(); $objItemMenuDTO->setNumIdSistema($numIdSistema); $objItemMenuDTO->setNumIdMenu($numIdMenu); - $objItemMenuDTO->setStrRotulo('Tramita GOV.BR'); + $objItemMenuDTO->setStrRotulo('Processo Eletrônico Nacional'); $objItemMenuDTO->setNumMaxRegistrosRetorno(1); $objItemMenuDTO->retNumIdItemMenu(); $objItemMenuDTO = $objItemMenuBD->consultar($objItemMenuDTO); if (empty($objItemMenuDTO)) { - throw new InfraException('Menu "Tramita GOV.BR" não foi localizado'); + throw new InfraException('Menu "Processo Eletrônico Nacional" não foi localizado'); } // Adicionar submenu @@ -1925,18 +1929,18 @@ protected function instalarV3050() ScriptSip::adicionarRecursoPerfil($numIdSistema, $numIdPerfilSeiAdministrador, 'pen_map_tipo_processo_padrao_salvar'); ScriptSip::adicionarRecursoPerfil($numIdSistema, $numIdPerfilSeiAdministrador, 'pen_map_tipo_processo_reativar'); - // Administrao > Tramita GOV.BR > Mapeamento de Tipos de Processo + // Administrao > Processo Eletrônico Nacional > Mapeamento de Tipos de Processo $numIdItemMenu = $this->criarMenu('Mapeamento de Tipos de Processo', 40, $objItemMenuDTO->getNumIdItemMenu(), $numIdMenu, null, $numIdSistema); - // Administrao > Tramita GOV.BR > Órgãos Externos > Listar + // Administrao > Processo Eletrônico Nacional > Órgãos Externos > Listar $numIdItemMenuRecuso = $this->criarMenu('Relacionamento entre Unidades', 20, $numIdItemMenu, $numIdMenu, $numIdRecursoListar, $numIdSistema); $this->cadastrarRelPergilItemMenu($numIdPerfilSeiAdministrador, $numIdRecursoListar, $numIdMenu, $numIdItemMenuRecuso); - // Administrao > Tramita GOV.BR > Órgãos Externos > Exportar Tipo de Processo + // Administrao > Processo Eletrônico Nacional > Órgãos Externos > Exportar Tipo de Processo $numIdItemMenuRecuso = $this->criarMenu('Exportação de Tipos de Processo', 21, $numIdItemMenu, $numIdMenu, $numIdRecursoExportar, $numIdSistema); $this->cadastrarRelPergilItemMenu($numIdPerfilSeiAdministrador, $numIdRecursoExportar, $numIdMenu, $numIdItemMenuRecuso); - // Administrao > Tramita GOV.BR > Órgãos Externos > Reativar Tipo de Processo + // Administrao > Processo Eletrônico Nacional > Órgãos Externos > Reativar Tipo de Processo $numIdItemMenuRecuso = $this->criarMenu('Reativar Mapeamento de Tipos de Processo', 22, $numIdItemMenu, $numIdMenu, $numIdRecursoReativar, $numIdSistema); $this->cadastrarRelPergilItemMenu($numIdPerfilSeiAdministrador, $numIdRecursoReativar, $numIdMenu, $numIdItemMenuRecuso); @@ -1946,9 +1950,22 @@ protected function instalarV3050() protected function instalarV3060() { - + $numIdSistema = $this->getNumIdSistema('SEI'); $numIdMenu = $this->getNumIdMenu('Principal', $numIdSistema); + + $objItemMenuDTO = new ItemMenuDTO(); + $objItemMenuDTO->setNumIdMenu($numIdMenu); + $objItemMenuDTO->setNumIdSistema($numIdSistema); + $objItemMenuDTO->setStrRotulo('Processo Eletrônico Nacional'); + $objItemMenuDTO->retNumIdMenu(); + $objItemMenuDTO->retNumIdItemMenu(); + $objItemMenuBD = new ItemMenuBD(BancoSip::getInstance()); + $objItemMenuDTO = $objItemMenuBD->consultar($objItemMenuDTO); + + $objItemMenuDTO->setStrRotulo('Tramita GOV.BR'); + $objItemMenuDTO = $objItemMenuBD->alterar($objItemMenuDTO); + // adicionar permissão $idPerfilAdm = ScriptSip::obterIdPerfil($numIdSistema, "Administrador"); $idPerfilBasico = ScriptSip::obterIdPerfil($numIdSistema, "Básico"); @@ -2007,8 +2024,8 @@ protected function instalarV3060() $idMenuProcessoTramitadosExterno = $this->criarMenu('Processos Tramitados Externamente', 57, $idMenuTramita, $numIdMenu, $numIdRecurso3, $numIdSistema); $this->cadastrarRelPergilItemMenu($idPerfilAdm, $numIdRecurso3, $numIdMenu, $idMenuProcessoTramitadosExterno); - $idMenuProcessoTramitadosLote = $this->criarMenu('Processos Tramitados em Bloco', 58, $idMenuTramita, $numIdMenu, $numIdRecurso4, $numIdSistema); - $this->cadastrarRelPergilItemMenu($idPerfilAdm, $numIdRecurso4, $numIdMenu, $idMenuProcessoTramitadosLote); + // $idMenuProcessoTramitadosLote = $this->criarMenu('Processos Tramitados em Bloco', 58, $idMenuTramita, $numIdMenu, $numIdRecurso4, $numIdSistema); + // $this->cadastrarRelPergilItemMenu($idPerfilAdm, $numIdRecurso4, $numIdMenu, $idMenuProcessoTramitadosLote); if (InfraUtil::compararVersoes(SIP_VERSAO, ">=", "3.0.0")) { $objItemMenuDTO = new ItemMenuDTO(); @@ -2069,6 +2086,28 @@ protected function instalarV3060() $this->atualizarNumeroVersao("3.6.0"); } + protected function instalarV3061() + { + try{ + $numIdSistema = $this->getNumIdSistema('SEI'); + + $numIdMenu = ScriptSip::obterIdMenu($numIdSistema, 'Principal'); + $numIdItemMenuMapTipDoc = ScriptSip::obterIdItemMenu($numIdSistema, $numIdMenu, 'Processos Tramitados em Bloco'); + ScriptSip::removerItemMenu($numIdSistema, $numIdMenu, $numIdItemMenuMapTipDoc); + } catch (\Exception $e) { + $this->logar("Item de menu de mapeamento de tipos de documentos não pode ser localizado"); + } + $this->atualizarNumeroVersao("3.6.1"); + } + + protected function instalarV3062() + { + $numIdSistemaSei = $this->getNumIdSistema('SEI'); + $idPerfilBasico = ScriptSip::obterIdPerfil($numIdSistemaSei, "Básico"); + ScriptSip::adicionarRecursoPerfil($numIdSistemaSei, $idPerfilBasico, 'pen_map_envio_parcial_listar'); + $this->atualizarNumeroVersao("3.6.2"); + } + protected function instalarV3070() { $this->atualizarNumeroVersao("3.7.0"); diff --git a/tests_sei4/funcional/src/paginas/PaginaPenHipoteseLegalListar.php b/tests_sei4/funcional/src/paginas/PaginaPenHipoteseLegalListar.php new file mode 100644 index 000000000..4a83ffb14 --- /dev/null +++ b/tests_sei4/funcional/src/paginas/PaginaPenHipoteseLegalListar.php @@ -0,0 +1,45 @@ +test->byId("txtInfraPesquisarMenu")->value(utf8_encode('Listar')); + $this->test->byXPath("//a[@link='pen_map_hipotese_legal_envio_listar']")->click(); + } + + /** + * Verificar se a tabela de hipótese legal é exibida + * + * @return bool + */ + public function existeTabela() + { + try { + $trTh = $this->test->byXPath('//*[@id="divInfraAreaTabela"]/table/tbody/tr[1]/th[2]')->text(); + return !empty($trTh) && !is_null($trTh) && count($trTh) >= 1; + } catch (Exception $ex) { + return false; + } + } +} diff --git a/tests_sei4/funcional/tests/CenarioBaseTestCase.php b/tests_sei4/funcional/tests/CenarioBaseTestCase.php index 91a82cfdd..2c2e16760 100755 --- a/tests_sei4/funcional/tests/CenarioBaseTestCase.php +++ b/tests_sei4/funcional/tests/CenarioBaseTestCase.php @@ -46,6 +46,7 @@ class CenarioBaseTestCase extends Selenium2TestCase protected $paginaCadastrarProcessoEmBloco = null; protected $paginaTramiteEmBloco = null; protected $paginaEnvioParcialListar = null; + protected $paginaPenHipoteseLegalListar = null; public function setUpPage(): void { @@ -72,6 +73,7 @@ public function setUpPage(): void $this->paginaCadastrarProcessoEmBloco = new PaginaCadastrarProcessoEmBloco($this); $this->paginaTramiteEmBloco = new PaginaTramiteEmBloco($this); $this->paginaEnvioParcialListar = new PaginaEnvioParcialListar($this); + $this->paginaPenHipoteseLegalListar = new PaginaPenHipoteseLegalListar($this); $this->currentWindow()->maximize(); } diff --git a/tests_sei4/funcional/tests/MapeamentoHipoteseLegalTest.php b/tests_sei4/funcional/tests/MapeamentoHipoteseLegalTest.php new file mode 100644 index 000000000..cb617efed --- /dev/null +++ b/tests_sei4/funcional/tests/MapeamentoHipoteseLegalTest.php @@ -0,0 +1,49 @@ +definirContextoTeste(CONTEXTO_ORGAO_A); + } + + /** + * Verificar se lista de mapeamento de hipótese legal é exibida + * + * @group hipotese_legal + * + * @return void + */ + public function test_verificar_lista_mapeamento_hipotese_legal_test() + { + // Configuração do dados para teste do cenário + self::$remetente = $this->definirContextoTeste(CONTEXTO_ORGAO_A); + + $this->acessarSistema( + self::$remetente['URL'], + self::$remetente['SIGLA_UNIDADE'], + self::$remetente['LOGIN'], + self::$remetente['SENHA'] + ); + + $this->paginaPenHipoteseLegalListar->navegarMapeamentoHipoteseLegalListar(); + $this->assertTrue($this->paginaPenHipoteseLegalListar->existeTabela()); + + $this->sairSistema(); + } +} diff --git a/tests_sei4/funcional/tests/TramiteBlocoExternoLimiteAnexoTest.php b/tests_sei4/funcional/tests/TramiteBlocoExternoLimiteAnexoTest.php index af260e5bb..9cdc40a08 100644 --- a/tests_sei4/funcional/tests/TramiteBlocoExternoLimiteAnexoTest.php +++ b/tests_sei4/funcional/tests/TramiteBlocoExternoLimiteAnexoTest.php @@ -134,6 +134,10 @@ public function test_tramitar_processo_anexado_da_origem() public function test_verificar_envio_processo() { + $this->markTestIncomplete( + 'Tela de confirmação de envio suprimida. Aguardando refatoração da funcionalidade do bloco para refatorar este teste.' + ); + $orgaosDiferentes = self::$remetente['URL'] != self::$destinatario['URL']; $this->acessarSistema(self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], self::$remetente['LOGIN'], self::$remetente['SENHA']); diff --git a/tests_sei4/funcional/tests/TramiteBlocoExternoLimiteTest.php b/tests_sei4/funcional/tests/TramiteBlocoExternoLimiteTest.php index a1c38384e..c44773185 100644 --- a/tests_sei4/funcional/tests/TramiteBlocoExternoLimiteTest.php +++ b/tests_sei4/funcional/tests/TramiteBlocoExternoLimiteTest.php @@ -115,6 +115,10 @@ public function teste_tramite_bloco_externo() */ public function test_verificar_envio_processo() { + $this->markTestIncomplete( + 'Tela de confirmação de envio suprimida. Aguardando refatoração da funcionalidade do bloco para refatorar este teste.' + ); + $orgaosDiferentes = self::$remetente['URL'] != self::$destinatario['URL']; $this->acessarSistema(self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], self::$remetente['LOGIN'], self::$remetente['SENHA']); diff --git a/tests_sei41/funcional/env_postgresql b/tests_sei41/funcional/env_postgresql new file mode 100644 index 000000000..052469bc5 --- /dev/null +++ b/tests_sei41/funcional/env_postgresql @@ -0,0 +1,54 @@ +##### Diretório em que está localizada a instalação do SEI ##### +SEI_PATH=../../../../../../ +ENVIRONMENT_VERSION=10.0 + +SEI_CONFIG=./assets/config/ConfiguracaoSEI.php +SEI_DATABASE_NAME=sei +SEI_DATABASE_USER=sei_user +SEI_DATABASE_PASSWORD=sei_user + +SIP_CONFIG=./assets/config/ConfiguracaoSip.php +SIP_DATABASE_NAME=sip +SIP_DATABASE_USER=sip_user +SIP_DATABASE_PASSWORD=sip_user + + +############### CONFIGURAÇÕES GERAIS DO ÓRGÃO 01 ############### +ORG1_HOSTNAME=org1-http +ORG1_PORT=8000 +ORG1_SIGLA_ORGAO=ABC +ORG1_APP_SEI_CHAVE_ACESSO=7babf862e12bd48f3101075c399040303d94a493c7ce9306470f719bb453e0428c6135dc +ORG1_APP_SIP_CHAVE_ACESSO=d27791b894028d9e7fa34887ad6f0c9a2c559cccda5f64f4e108e3573d5db862b66fb933 +ORG1_CERTIFICADO=/opt/sei/config/mod-pen/certificado_org1.pem +ORG1_CERTIFICADO_SENHA=XXXXXXXXXXXXXX + + +##### BANCO DE DADOS DO ÓRGÃO 1 ##### +# Configurações do banco de dados POSTGRESQL do ÓRGÃO 1 +ORG1_DATABASE_IMAGE=processoeletronico/vagrant_sei4_postgresql +ORG1_DATABASE_HOST=org1-database +ORG1_DATABASE_TYPE=PostgreSql +ORG1_DATABASE_GUEST_PORT=5432 +ORG1_DATABASE_HOST_PORT=54321 +ORG1_DATABASE_DATA_DIR=/var/lib/postgresql/data +CONTEXTO_ORGAO_A_DB_SEI_DSN="pgsql:host=org1-database;port=5432;dbname=sei" + + +############### CONFIGURAÇÕES GERAIS DO ÓRGÃO 02 ############### + +ORG2_HOSTNAME=org2-http +ORG2_PORT=8000 +ORG2_SIGLA_ORGAO=ABC +ORG2_APP_SEI_CHAVE_ACESSO=7babf862e12bd48f3101075c399040303d94a493c7ce9306470f719bb453e0428c6135dc +ORG2_APP_SIP_CHAVE_ACESSO=d27791b894028d9e7fa34887ad6f0c9a2c559cccda5f64f4e108e3573d5db862b66fb933 +ORG2_CERTIFICADO=/opt/sei/config/mod-pen/certificado_org2.pem +ORG2_CERTIFICADO_SENHA=XXXXXXXXXXXXXX + +# Configurações do banco de dados POSTGRESQL do ÓRGÃO 2 +ORG2_DATABASE_IMAGE=processoeletronico/vagrant_sei4_postgresql +ORG2_DATABASE_HOST=org2-database +ORG2_DATABASE_TYPE=PostgreSql +ORG2_DATABASE_GUEST_PORT=5432 +ORG2_DATABASE_HOST_PORT=54322 +ORG2_DATABASE_DATA_DIR=/var/lib/postgresql/data +CONTEXTO_ORGAO_B_DB_SEI_DSN="pgsql:host=org2-database;port=5432;dbname=sei" \ No newline at end of file diff --git a/tests_sei41/funcional/phpunit.xml b/tests_sei41/funcional/phpunit.xml index 19016da60..20f52b05f 100755 --- a/tests_sei41/funcional/phpunit.xml +++ b/tests_sei41/funcional/phpunit.xml @@ -36,17 +36,17 @@ + value="INFORME_O_ID_DE_ESTRUTURA_UTILIZADO_PARA_TESTE_ORG1" /> + value="INFORME_A_SIGLA_DE_ESTRUTURA_UTILIZADO_PARA_TESTE_ORG1" /> + value="INFORME_O_NOME_DA_ESTRUTURA_UTILIZADO_PARA_TESTE_ORG1" /> + value="INFORME_O_ID_DE_ESTRUTURA_UTILIZADO_PARA_TESTE_ORG_1_1" /> + value="INFORME_O_NOME_DA_ESTRUTURA_UTILIZADO_PARA_TESTE_ORG_1_1" /> @@ -78,12 +78,12 @@ + value="INFORME_O_ID_DE_ESTRUTURA_UTILIZADO_PARA_TESTE_ORG_2" /> + value="INFORME_A_SIGLA_DE_ESTRUTURA_UTILIZADO_PARA_TESTE_ORG2" /> + value="INFORME_O_NOME_DA_ESTRUTURA_UTILIZADO_PARA_TESTE_ORG2" /> diff --git a/tests_sei41/funcional/src/paginas/PaginaPenHipoteseLegalListar.php b/tests_sei41/funcional/src/paginas/PaginaPenHipoteseLegalListar.php new file mode 100644 index 000000000..4a83ffb14 --- /dev/null +++ b/tests_sei41/funcional/src/paginas/PaginaPenHipoteseLegalListar.php @@ -0,0 +1,45 @@ +test->byId("txtInfraPesquisarMenu")->value(utf8_encode('Listar')); + $this->test->byXPath("//a[@link='pen_map_hipotese_legal_envio_listar']")->click(); + } + + /** + * Verificar se a tabela de hipótese legal é exibida + * + * @return bool + */ + public function existeTabela() + { + try { + $trTh = $this->test->byXPath('//*[@id="divInfraAreaTabela"]/table/tbody/tr[1]/th[2]')->text(); + return !empty($trTh) && !is_null($trTh) && count($trTh) >= 1; + } catch (Exception $ex) { + return false; + } + } +} diff --git a/tests_sei41/funcional/tests/CenarioBaseTestCase.php b/tests_sei41/funcional/tests/CenarioBaseTestCase.php index 01006323d..c8edc20e4 100755 --- a/tests_sei41/funcional/tests/CenarioBaseTestCase.php +++ b/tests_sei41/funcional/tests/CenarioBaseTestCase.php @@ -44,6 +44,7 @@ class CenarioBaseTestCase extends Selenium2TestCase protected $paginaExportarTiposProcesso = null; protected $paginaTipoProcessoReativar = null; protected $paginaEnvioParcialListar = null; + protected $paginaPenHipoteseLegalListar = null; public function setUpPage(): void { @@ -68,6 +69,7 @@ public function setUpPage(): void $this->paginaExportarTiposProcesso = new PaginaExportarTiposProcesso($this); $this->paginaTipoProcessoReativar = new PaginaTipoProcessoReativar($this); $this->paginaEnvioParcialListar = new PaginaEnvioParcialListar($this); + $this->paginaPenHipoteseLegalListar = new PaginaPenHipoteseLegalListar($this); $this->currentWindow()->maximize(); } @@ -95,6 +97,7 @@ public static function setUpBeforeClass(): void // Remoção de mapeamento de espécie não mapeada na origem $nomeSerieNaoMapeada = utf8_encode(CONTEXTO_ORGAO_A_TIPO_DOCUMENTO_NAO_MAPEADO); $serieNaoMapeadaOrigem = $bancoOrgaoA->query('select ID_SERIE from serie where nome = ?', array($nomeSerieNaoMapeada)); + $serieNaoMapeadaOrigem[0] = array_change_key_case($serieNaoMapeadaOrigem[0], CASE_UPPER); $bancoOrgaoA->execute("delete from md_pen_rel_doc_map_enviado where id_serie = ?", array($serieNaoMapeadaOrigem[0]["ID_SERIE"])); $bancoOrgaoA->execute("insert into md_pen_rel_hipotese_legal(id_mapeamento, id_hipotese_legal, id_hipotese_legal_pen, tipo, sin_ativo) values (?, ?, ?, ?, ?)", array(1, 3, 3, 'E', 'S')); $bancoOrgaoA->execute("insert into md_pen_rel_hipotese_legal(id_mapeamento, id_hipotese_legal, id_hipotese_legal_pen, tipo, sin_ativo) values (?, ?, ?, ?, ?)", array(2, 4, 4, 'E', 'S')); @@ -126,6 +129,7 @@ public static function setUpBeforeClass(): void // Remoção de mapeamento de espécie não mapeada na origem $nomeSerieNaoMapeada = utf8_encode(CONTEXTO_ORGAO_B_TIPO_DOCUMENTO_NAO_MAPEADO); $serieNaoMapeadaOrigem = $bancoOrgaoB->query('select ID_SERIE from serie where nome = ?', array($nomeSerieNaoMapeada)); + $serieNaoMapeadaOrigem[0] = array_change_key_case($serieNaoMapeadaOrigem[0], CASE_UPPER); $bancoOrgaoB->execute("delete from md_pen_rel_doc_map_recebido where id_serie = ?", array($serieNaoMapeadaOrigem[0]["ID_SERIE"])); $bancoOrgaoB->execute("insert into md_pen_rel_hipotese_legal(id_mapeamento, id_hipotese_legal, id_hipotese_legal_pen, tipo, sin_ativo) values (?, ?, ?, ?, ?);", array(4, 3, 3, 'E', 'S')); $bancoOrgaoB->execute("insert into md_pen_rel_hipotese_legal(id_mapeamento, id_hipotese_legal, id_hipotese_legal_pen, tipo, sin_ativo) values (?, ?, ?, ?, ?);", array(5, 3, 3, 'R', 'S')); diff --git a/tests_sei41/funcional/tests/MapeamentoHipoteseLegalTest.php b/tests_sei41/funcional/tests/MapeamentoHipoteseLegalTest.php new file mode 100644 index 000000000..cb617efed --- /dev/null +++ b/tests_sei41/funcional/tests/MapeamentoHipoteseLegalTest.php @@ -0,0 +1,49 @@ +definirContextoTeste(CONTEXTO_ORGAO_A); + } + + /** + * Verificar se lista de mapeamento de hipótese legal é exibida + * + * @group hipotese_legal + * + * @return void + */ + public function test_verificar_lista_mapeamento_hipotese_legal_test() + { + // Configuração do dados para teste do cenário + self::$remetente = $this->definirContextoTeste(CONTEXTO_ORGAO_A); + + $this->acessarSistema( + self::$remetente['URL'], + self::$remetente['SIGLA_UNIDADE'], + self::$remetente['LOGIN'], + self::$remetente['SENHA'] + ); + + $this->paginaPenHipoteseLegalListar->navegarMapeamentoHipoteseLegalListar(); + $this->assertTrue($this->paginaPenHipoteseLegalListar->existeTabela()); + + $this->sairSistema(); + } +} diff --git a/tests_sei41/funcional/tests/MapeamentoTipoProcessoDesativarReativarTest.php b/tests_sei41/funcional/tests/MapeamentoTipoProcessoDesativarReativarTest.php index 6aac207c1..a67bd64aa 100644 --- a/tests_sei41/funcional/tests/MapeamentoTipoProcessoDesativarReativarTest.php +++ b/tests_sei41/funcional/tests/MapeamentoTipoProcessoDesativarReativarTest.php @@ -44,6 +44,10 @@ function setUp(): void */ public function test_desativacao_mapeamento_orgao_externo() { + $this->markTestIncomplete( + 'Teste refatorado a partir da entrega 3.7.0.' + ); + $this->acessarSistema( self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], @@ -71,6 +75,10 @@ public function test_desativacao_mapeamento_orgao_externo() */ public function test_reativacao_mapeamento_orgao_externo() { + $this->markTestIncomplete( + 'Teste refatorado a partir da entrega 3.7.0.' + ); + $this->acessarSistema( self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], @@ -98,6 +106,10 @@ public function test_reativacao_mapeamento_orgao_externo() */ public function test_desativacao_checkbox_mapeamento_orgao_externo() { + $this->markTestIncomplete( + 'Teste refatorado a partir da entrega 3.7.0.' + ); + $this->acessarSistema( self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], @@ -125,6 +137,9 @@ public function test_desativacao_checkbox_mapeamento_orgao_externo() */ public function test_reativar_checkbox_mapeamento_orgao_externo() { + $this->markTestIncomplete( + 'Teste refatorado a partir da entrega 3.7.0.' + ); $this->acessarSistema( self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], diff --git a/tests_sei41/funcional/tests/MapeamentoTipoProcessoExcluirTest.php b/tests_sei41/funcional/tests/MapeamentoTipoProcessoExcluirTest.php index ddbcf101e..7b439db37 100644 --- a/tests_sei41/funcional/tests/MapeamentoTipoProcessoExcluirTest.php +++ b/tests_sei41/funcional/tests/MapeamentoTipoProcessoExcluirTest.php @@ -44,6 +44,10 @@ function setUp(): void */ public function test_excluir_mapeamento_orgao_externo() { + $this->markTestIncomplete( + 'Teste refatorado a partir da entrega 3.7.0.' + ); + // Configuração do dados para teste do cenário self::$remetente = $this->definirContextoTeste(CONTEXTO_ORGAO_A); diff --git a/tests_sei41/funcional/tests/MapeamentoTipoProcessoReativarTest.php b/tests_sei41/funcional/tests/MapeamentoTipoProcessoReativarTest.php index 1ff853313..11cf7b222 100644 --- a/tests_sei41/funcional/tests/MapeamentoTipoProcessoReativarTest.php +++ b/tests_sei41/funcional/tests/MapeamentoTipoProcessoReativarTest.php @@ -50,6 +50,10 @@ function setUp(): void */ public function test_reativacao_mapeamento_orgao_externo() { + $this->markTestIncomplete( + 'Teste refatorado a partir da entrega 3.7.0.' + ); + $this->acessarSistema( self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], @@ -77,6 +81,10 @@ public function test_reativacao_mapeamento_orgao_externo() */ public function test_reativar_checkbox_mapeamento_orgao_externo() { + $this->markTestIncomplete( + 'Teste refatorado a partir da entrega 3.7.0.' + ); + $this->acessarSistema( self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], diff --git a/tests_super/funcional/src/paginas/PaginaConfiguracaoModulo.php b/tests_super/funcional/src/paginas/PaginaConfiguracaoModulo.php index 42c4feb48..0029b53ab 100644 --- a/tests_super/funcional/src/paginas/PaginaConfiguracaoModulo.php +++ b/tests_super/funcional/src/paginas/PaginaConfiguracaoModulo.php @@ -27,7 +27,6 @@ public function getTituloPaginaConfiguracao() public function navegarPaginaNovoMapeamentoUnidade() { $this->test->byId("txtInfraPesquisarMenu")->value(utf8_encode('Tramita GOV.BR')); - $this->test->byXPath("//a[@href='#submenu114']")->click(); $this->test->byXPath("//a[@link='pen_map_unidade_cadastrar']")->click(); } diff --git a/tests_super/funcional/src/paginas/PaginaPenHipoteseLegalListar.php b/tests_super/funcional/src/paginas/PaginaPenHipoteseLegalListar.php new file mode 100644 index 000000000..4a83ffb14 --- /dev/null +++ b/tests_super/funcional/src/paginas/PaginaPenHipoteseLegalListar.php @@ -0,0 +1,45 @@ +test->byId("txtInfraPesquisarMenu")->value(utf8_encode('Listar')); + $this->test->byXPath("//a[@link='pen_map_hipotese_legal_envio_listar']")->click(); + } + + /** + * Verificar se a tabela de hipótese legal é exibida + * + * @return bool + */ + public function existeTabela() + { + try { + $trTh = $this->test->byXPath('//*[@id="divInfraAreaTabela"]/table/tbody/tr[1]/th[2]')->text(); + return !empty($trTh) && !is_null($trTh) && count($trTh) >= 1; + } catch (Exception $ex) { + return false; + } + } +} diff --git a/tests_super/funcional/tests/CenarioBaseTestCase.php b/tests_super/funcional/tests/CenarioBaseTestCase.php index bed09e7c8..d2d08aad3 100755 --- a/tests_super/funcional/tests/CenarioBaseTestCase.php +++ b/tests_super/funcional/tests/CenarioBaseTestCase.php @@ -49,6 +49,7 @@ class CenarioBaseTestCase extends Selenium2TestCase protected $paginaCadastrarProcessoEmBloco = null; protected $paginaTramiteEmBloco = null; protected $paginaEnvioParcialListar = null; + protected $paginaPenHipoteseLegalListar = null; public function setUpPage(): void { @@ -77,6 +78,7 @@ public function setUpPage(): void $this->paginaCadastrarProcessoEmBloco = new PaginaCadastrarProcessoEmBloco($this); $this->paginaTramiteEmBloco = new PaginaTramiteEmBloco($this); $this->paginaEnvioParcialListar = new PaginaEnvioParcialListar($this); + $this->paginaPenHipoteseLegalListar = new PaginaPenHipoteseLegalListar($this); $this->currentWindow()->maximize(); } diff --git a/tests_super/funcional/tests/MapeamentoHipoteseLegalTest.php b/tests_super/funcional/tests/MapeamentoHipoteseLegalTest.php new file mode 100644 index 000000000..cb617efed --- /dev/null +++ b/tests_super/funcional/tests/MapeamentoHipoteseLegalTest.php @@ -0,0 +1,49 @@ +definirContextoTeste(CONTEXTO_ORGAO_A); + } + + /** + * Verificar se lista de mapeamento de hipótese legal é exibida + * + * @group hipotese_legal + * + * @return void + */ + public function test_verificar_lista_mapeamento_hipotese_legal_test() + { + // Configuração do dados para teste do cenário + self::$remetente = $this->definirContextoTeste(CONTEXTO_ORGAO_A); + + $this->acessarSistema( + self::$remetente['URL'], + self::$remetente['SIGLA_UNIDADE'], + self::$remetente['LOGIN'], + self::$remetente['SENHA'] + ); + + $this->paginaPenHipoteseLegalListar->navegarMapeamentoHipoteseLegalListar(); + $this->assertTrue($this->paginaPenHipoteseLegalListar->existeTabela()); + + $this->sairSistema(); + } +} diff --git a/tests_super/funcional/tests/TramiteBlocoExternoLimiteAnexoTest.php b/tests_super/funcional/tests/TramiteBlocoExternoLimiteAnexoTest.php index 12031ac39..f0f984fca 100644 --- a/tests_super/funcional/tests/TramiteBlocoExternoLimiteAnexoTest.php +++ b/tests_super/funcional/tests/TramiteBlocoExternoLimiteAnexoTest.php @@ -140,6 +140,10 @@ public function test_tramitar_processo_anexado_da_origem() public function test_verificar_envio_processo() { + $this->markTestIncomplete( + 'Tela de confirmação de envio suprimida. Aguardando refatoração da funcionalidade do bloco para refatorar este teste.' + ); + $orgaosDiferentes = self::$remetente['URL'] != self::$destinatario['URL']; $this->acessarSistema(self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], self::$remetente['LOGIN'], self::$remetente['SENHA']); diff --git a/tests_super/funcional/tests/TramiteBlocoExternoLimiteTest.php b/tests_super/funcional/tests/TramiteBlocoExternoLimiteTest.php index 78e7d1c64..3178e65a1 100644 --- a/tests_super/funcional/tests/TramiteBlocoExternoLimiteTest.php +++ b/tests_super/funcional/tests/TramiteBlocoExternoLimiteTest.php @@ -121,6 +121,10 @@ public function teste_tramite_bloco_externo() */ public function test_verificar_envio_processo() { + $this->markTestIncomplete( + 'Tela de confirmação de envio suprimida. Aguardando refatoração da funcionalidade do bloco para refatorar este teste.' + ); + $orgaosDiferentes = self::$remetente['URL'] != self::$destinatario['URL']; $this->acessarSistema(self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], self::$remetente['LOGIN'], self::$remetente['SENHA']);