Skip to content

Refatorações e ajustes finais da Milestone 2 #44

Description

@AlAnNuB

Ao final de toda grande Milestone eu gosto de reservar um tempo para refatorar e lapidar pequenas arestas que foram se criando ao longo das tarefas. Então esta é uma issue que agrega várias refatorações e ajustes para finalizar a Milestone 2 em um estado melhor.

Ainda há várias outras pequenas tarefas em uma lista que controlo aqui, mas irei diluir elas ao longo das próximas Milestones dado que os itens que foram selecionados já formam uma lista bem grande.

Lista de melhorias implementadas no PR #45

  • Alterar authentication.getAuthenticatedUser() para apenas authentication.getUser().
  • Adicionar um return explícito no handler GET do endpoint /api/v1/status.
  • Padronizar o uso do caractere ` na descrição dos testes.
  • Substituir URLs fixas http://localhost:3000 por ${webserver.origin} nos testes
  • Mover dotenv e dotenv-expand para devDependencies.
  • Remover async desnecessário dos métodos setSessionCookie() e clearSessionCookie() do controller.js.
  • Corrigir o formato das datas ISO nos testes unitários do model authorization.
  • Substituir "Retrieving" por "Running" nas descrições dos testes de POST /api/v1/migrations.
  • Validar que um novo email é persistido no banco de dados após um PATCH contra /api/v1/users/[username] tentar atualizar este valor.
  • Encadear createRouter() diretamente no export default de todas as rotas/controllers.
  • Alterar orchestrator.createSession() para receber o objeto user ao invés de só receber o id para ficar com a mesma interface pública de orchestrator.activateUser().
  • Limpar o banco de dados e rodar as migrations no hook principal dos testes de GET /api/v1/status
  • Adicionar cobertura de teste para acesso de usuário padrão ao endpoint GET /api/v1/status.
  • Definir SameSite=Lax no cookie de sessão.
  • Ajustar o teste de POST /api/v1/sessions para tolerar que uma sessão não possua perfeitamente 30 dias em milissegundos.
  • Atualizar as dependências patch e minor do projeto.
  • Atualizar dependências major que não exijam mudanças no código.
  • Atualizar next, react e eslint para as versões compatíveis mais recentes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions