Usually mix.test
cleans the test database, but it is not working.
It may be because I was playing around with making a users
schema, but didn't want to use what I made so I got rid of it. I then started over and made a new schema for users which was different from the first.
When I tried to run mix test again, there was an error that some fields did not exist which should have been there with the new schema.
You can access the test database by using MIX_ENV=test
followed by a command such as mix do ecto.drop
, mix ecto.reset
or mix ecto.rollback
.
In this particular case, I used:
MIX_ENV=test mix ecto.reset
If your application has multiple repos (DBs), you'll want to specify a specific repo to avoid applying the operation to all repos. For example
mix ecto.drop --repo Order.Repo
To find out more about an Ecto task, use mix help <task>