From c718ad227efe4b389c09f167a375c57969cf4bb4 Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Tue, 6 Dec 2011 22:00:35 -0500 Subject: [PATCH] tests for FK/autoincrement selection --- test/sql/test_defaults.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/test/sql/test_defaults.py b/test/sql/test_defaults.py index 334a9d97c7..c0d3c2d499 100644 --- a/test/sql/test_defaults.py +++ b/test/sql/test_defaults.py @@ -552,6 +552,30 @@ class AutoIncrementTest(fixtures.TablesTest): ) assert t._autoincrement_column is None + def test_autoincrement_ignore_fk(self): + m = MetaData() + y = Table('y', m, + Column('id', Integer(), primary_key=True) + ) + x = Table('x', m, + Column('id', Integer(), + ForeignKey('y.id'), + autoincrement="ignore_fk", primary_key=True) + ) + assert x._autoincrement_column is x.c.id + + def test_autoincrement_fk_disqualifies(self): + m = MetaData() + y = Table('y', m, + Column('id', Integer(), primary_key=True) + ) + x = Table('x', m, + Column('id', Integer(), + ForeignKey('y.id'), + primary_key=True) + ) + assert x._autoincrement_column is None + @testing.fails_on('sqlite', 'FIXME: unknown') def test_non_autoincrement(self): # sqlite INT primary keys can be non-unique! (only for ints) -- 2.47.2