def test_user_foreign_key_supports_migration(): """Tests serializing UserForeignKey in a simple migration. Since `UserForeignKey` is a ForeignKey migrations pass `to=` explicitly and we have to pop it in our __init__. """ fields = { 'charfield': UserForeignKey(), } migration = type(str('Migration'), (migrations.Migration,), { 'operations': [ migrations.CreateModel( name='MyModel', fields=tuple(fields.items()), bases=(models.Model,) ), ], }) writer = MigrationWriter(migration) output = writer.as_string() # Just make sure it runs and that things look alright. result = safe_exec(output, globals_=globals()) assert 'Migration' in result