requirement | release |
---|---|
nix | 2.5.1+ |
direnv | 2.28.0+ |
nix-direnv | 1.5.1+ |
supabase-cli | >= 1.122.0 |
Dentro do diretório do projeto, execute:
direnv allow
O ambiente local será baixado e compilado usando nix-flakes.
Inicie o banco em um terminal/processo:
postgres
Inciie os serviços da supabase (precisa do docker):
supabase start
E suba o servidor do Phoenix
normalmente:
iex -S mix phx.server
O servidor estará disponível em localhost
, na porta 4000
.
Lembre-se de sempre iniciar o banco de dados, caso contrário não será possível executar mix tasks
que interajam com o banco e ao subir o servidor web ocorrerá erros de conexão.
mix ecto.migrate
mix ecto.rollback
mix ecto.reset
Para rodar os testes localmente execute o comando:
mix test
E para rodar todos os testes (format
, credo
e test
) use:
mix ci
É recomendável rodar os testes unitários sem efetuar a recriação do DB, pois o tempo de execução será
sempre menor. Porém, se o banco de testes ficar em um estado em que os dados presentes influenciem na
execução dos testes com sucesso, é recomendado recriá-lo.
Para recriar o banco de testes, rodar as seeds e os testes unitários
(ecto.drop
, ecto.create
, ecto.migrate
, seeds
e test
) execute:
mix test.reset