# Cenários de aceitação para a integração

## Utilização

A equipa de TI deve executar estes cenários no ambiente de homologação ligado ao sistema existente. O resultado esperado é uma especificação de aceitação. As verificações já feitas no protótipo estão descritas separadamente em `VALIDACAO.md` e não comprovam autenticação, base de dados ou email reais.

| ID    | Cenário                                             | Resultado esperado em homologação                                                        |
| ----- | --------------------------------------------------- | ---------------------------------------------------------------------------------------- |
| TI-01 | Abrir landing em portátil, ecrã largo e telemóvel   | Scroll vertical, conteúdo central limitado e composição sem overflow horizontal          |
| TI-02 | Rever imagens, logos e fontes                       | Recursos corretos, Montserrat e proporções preservadas                                   |
| TI-03 | Passar o rato e navegar com teclado                 | Hover próximo de 20% de transparência, foco visível e controlos utilizáveis              |
| TI-04 | Abrir e fechar os modais                            | Foco contido, Escape funcional e retorno do foco quando aplicável                        |
| TI-05 | Login válido e inválido                             | Sessão real apenas no acesso válido, erro no inválido                                    |
| TI-06 | Registo/recuperação e consentimento                 | Fluxo do sistema, validação e registo do consentimento de acordo com a política aprovada |
| TI-07 | Autenticação OKTA, quando aplicável                 | Retorno à aplicação com identidade e empresa corretas                                    |
| TI-08 | Aceder diretamente à rota de outra empresa          | Servidor recusa o acesso não autorizado                                                  |
| TI-09 | Abrir CUF                                           | Todos os quatro grupos visíveis desde o início, sem accordions                           |
| TI-10 | Abrir outras empresas                               | Locais como botões diretos, sem subescolhas                                              |
| TI-11 | Tentar selecionar local indisponível                | Ausência de ação na interface e validação equivalente no servidor                        |
| TI-12 | Escolher local antes do primeiro apadrinhamento     | Só aparecem as crianças desse local autorizado                                           |
| TI-13 | Usar filtros de género, idade e instituição         | Combinação correta dos filtros e contadores com significado consistente                  |
| TI-14 | Obter zero resultados                               | Estado vazio e limpeza de filtros funcionais                                             |
| TI-15 | Percorrer várias páginas de resultados              | Sem cartões repetidos/omitidos por erro de paginação e setas coerentes                   |
| TI-16 | Abrir o modal de uma criança                        | Nome, idade, instituição, pedido, local e prazo correspondem ao registo atual            |
| TI-17 | Confirmar um apadrinhamento                         | Uma reserva persistida, criança retirada dos disponíveis e resumo com referência real    |
| TI-18 | Duplo clique ou repetição do mesmo pedido           | Ausência de apadrinhamentos duplicados                                                   |
| TI-19 | Duas sessões tentam a mesma criança                 | Só uma confirma; a outra recebe conflito e atualiza a disponibilidade                    |
| TI-20 | Recarregar ou abrir outro dispositivo após reserva  | Apadrinhamento e local bloqueado conservados pelo sistema                                |
| TI-21 | Tentar mudar de local após apadrinhar               | Bloqueio no servidor e aviso na interface                                                |
| TI-22 | Alterar nome do padrinho                            | Gravação autorizada e apresentação do valor persistido                                   |
| TI-23 | Cancelar um apadrinhamento por entregar             | Cancelamento persistido e criança novamente disponível segundo a regra da campanha       |
| TI-24 | Tentar alterar/cancelar um apadrinhamento alheio    | Servidor recusa, mesmo com IDs ou pedidos alterados                                      |
| TI-25 | Presente entregue                                   | Estado vindo da operação administrativa e ações restritas conforme a regra aprovada      |
| TI-26 | Envio de email com sucesso, pendente e falha        | Mensagem verdadeira para cada estado, sem duplicar reserva                               |
| TI-27 | Falha de rede na confirmação/alteração/cancelamento | Nenhum sucesso antecipado; indicação do resultado conhecido e forma de recuperar         |
| TI-28 | Sessão expira durante a escolha                     | Reautenticação e reconciliação dos dados antes de confirmar                              |
| TI-29 | Sair da aplicação                                   | Sessão real invalidada segundo o mecanismo da aplicação                                  |
| TI-30 | Rever a versão operacional                          | Ausência de dados fictícios, índice de revisão e atalhos `?estado=`                      |

## Decisões antes do aceite

Confirmar a regra de local depois de cancelar todos os apadrinhamentos, as permissões da Família José de Mello, o catálogo real, o calendário da campanha e os textos associados ao estado do email. A organização deve resolver as divergências dos modelos descritas em `MAPA-DOS-MODELOS.md`.

## Registo sugerido da homologação

Para cada execução, registar ambiente/versão, cenário, resultado, evidência sem dados pessoais e responsável. Os cenários de backend acima permanecem por executar até existir uma integração real.
