def test_autonames_with_ignore_all_app_migrations(settings):
    """Here we check that all migrations ignored inside app."""
    # patch settings to ignore all migrations in the app
    settings.DTM_IGNORED_MIGRATIONS = {('main_app', '*')}
    warnings = check_migration_names()

    assert not warnings
def test_autonames():
    """Here we check that bad migrations do produce warnings."""
    warnings = check_migration_names()

    assert len(warnings) == 1
    assert warnings[0].level == WARNING
    assert warnings[0].id.startswith(CHECK_NAME)
    assert 'main_app.0004_auto_20191119_2125' in warnings[0].msg
def test_autonames_with_ignore(settings):
    """Here we check that some migrations can be ignored."""
    # patch settings to ignore two bad migrations
    settings.DTM_IGNORED_MIGRATIONS = {
        ('main_app', '0004_auto_20191119_2125'),
        ('main_app', '0005_auto_20200329_1118'),
    }
    warnings = check_migration_names()

    assert not warnings
def test_autonames():
    """Here we check that bad migrations do produce warnings."""
    warnings = check_migration_names()
    warnings_msgs = {warning.msg for warning in warnings}

    assert len(warnings) == 2

    assert [warnings[0].level, warnings[1].level] == [WARNING, WARNING]
    assert all([
        warnings[0].id.startswith(CHECK_NAME),
        warnings[1].id.startswith(CHECK_NAME),
    ], )
    assert warnings_msgs == {
        'Migration main_app.0004_auto_20191119_2125 has an automatic name.',
        'Migration main_app.0005_auto_20200329_1118 has an automatic name.',
    }
def test_autonames_with_ignore(ignore_migration):
    """Here we check that some migrations can be ignored."""
    warnings = check_migration_names()

    assert not warnings