Пример #1
0
    def test_non_package(self):
        self.migrations_dir.rmdir()
        self.migrations_dir.with_suffix(".py").touch()

        result = check_max_migration_files()

        assert result == []
Пример #2
0
    def test_dlm_E001(self):
        (self.migrations_dir / "__init__.py").touch()

        result = check_max_migration_files()

        assert len(result) == 1
        assert result[0].id == "dlm.E001"
        assert result[0].msg == "testapp's max_migration.txt does not exist."
Пример #3
0
    def test_okay(self):
        (self.migrations_dir / "__init__.py").touch()
        (self.migrations_dir / "0001_initial.py").touch()
        (self.migrations_dir / "0002_updates.py").touch()
        (self.migrations_dir /
         "max_migration.txt").write_text("0002_updates\n")

        result = check_max_migration_files()

        assert result == []
Пример #4
0
    def test_dlm_E002(self):
        (self.migrations_dir / "__init__.py").touch()
        (self.migrations_dir /
         "max_migration.txt").write_text("line1\nline2\n")

        result = check_max_migration_files()

        assert len(result) == 1
        assert result[0].id == "dlm.E002"
        assert result[
            0].msg == "testapp's max_migration.txt contains multiple lines."
Пример #5
0
    def test_dlm_E003(self):
        (self.migrations_dir / "__init__.py").touch()
        (self.migrations_dir / "0001_initial.py").touch()
        (self.migrations_dir / "max_migration.txt").write_text("0001_start\n")

        result = check_max_migration_files()

        assert len(result) == 1
        assert result[0].id == "dlm.E003"
        assert result[0].msg == (
            "testapp's max_migration.txt points to non-existent migration" +
            " '0001_start'.")
Пример #6
0
    def test_dlm_E004(self):
        (self.migrations_dir / "__init__.py").touch()
        (self.migrations_dir / "0001_initial.py").touch()
        (self.migrations_dir / "0002_updates.py").touch()
        (self.migrations_dir /
         "max_migration.txt").write_text("0001_initial\n")

        result = check_max_migration_files()

        assert len(result) == 1
        assert result[0].id == "dlm.E004"
        assert result[0].msg == (
            "testapp's max_migration.txt contains '0001_initial', but the" +
            " latest migration is '0002_updates'.")
Пример #7
0
    def test_skipped_unspecified_app(self):
        (self.migrations_dir / "__init__.py").touch()

        result = check_max_migration_files(app_configs=[])

        assert result == []
Пример #8
0
    def test_empty_migrations_dir(self):
        result = check_max_migration_files()

        assert result == []
Пример #9
0
    def test_no_migrations_dir(self):
        self.migrations_dir.rmdir()

        result = check_max_migration_files()

        assert result == []