Почему в тестовой базе данных таблица Permission заполнена, а в других нет (django python)?

Во время игры с тестированием django я заметил, что таблица Permission в тестовой базе данных не пуста (как, например, User и таблицы моделей, определенных мной) - она имеет все разрешения из реальной таблицы. pdb

Мои вопросы:

  1. Is the Permission table the only prepopulated table? (I have trouble inspecting other tables, because db is in-memory)
  2. Where is it prepopulated (I also couldn't find)? Upon setting up test suit? Or just before executing each test method? Or maybe added to queryset everytime it is requested?

Разрешения создаются при выполнении manage.py migrate, существует обработчик сигнала, который слушает сигнал post_migrate и создает эти разрешения для каждой новой модели.

Docs

Таблица ContentType также будет заполнена аналогичным образом

Когда вы запускаете свои тесты, к вашей тестовой БД будут применены ваши миграции

Вернуться на верх