<s> """<STR_LIT>""" <EOL> from pyrseas . testutils import DatabaseToMapTestCase <EOL> from pyrseas . testutils import InputMapToSqlTestCase , fix_indent <EOL> COMMENT_STMT = "<STR_LIT>" <EOL> import pytest <EOL> class CheckConstraintToMapTestCase ( DatabaseToMapTestCase ) : <EOL> """<STR_LIT>""" <EOL> def test_check_constraint_1 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> expmap = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : '<STR_LIT>' } } } <EOL> self . assertEqual ( dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] , expmap ) <EOL> def test_check_constraint_2 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> expmap = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' ] , <EOL> '<STR_LIT>' : '<STR_LIT>' } } } <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == expmap <EOL> def test_check_constraint_inherited ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" , "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> expmap = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : True , <EOL> '<STR_LIT>' : '<STR_LIT>' } } } <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == expmap <EOL> class CheckConstraintToSqlTestCase ( InputMapToSqlTestCase ) : <EOL> """<STR_LIT>""" <EOL> def test_create_w_check_constraint ( self ) : <EOL> "<STR_LIT>" <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : '<STR_LIT>' } } } } ) <EOL> sql = self . to_sql ( inmap ) <EOL> assert fix_indent ( sql [ <NUM_LIT:0> ] ) == "<STR_LIT>" <EOL> assert fix_indent ( sql [ <NUM_LIT:1> ] ) == "<STR_LIT>" "<STR_LIT>" <EOL> def test_add_check_constraint ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' ] , <EOL> '<STR_LIT>' : '<STR_LIT>' } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> assert fix_indent ( sql [ <NUM_LIT:0> ] ) == "<STR_LIT>" "<STR_LIT>" <EOL> def test_add_check_inherited ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , '<STR_LIT>' : { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : '<STR_LIT>' } } } , <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , '<STR_LIT>' : { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : True } } , '<STR_LIT>' : [ '<STR_LIT>' ] } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> assert fix_indent ( sql [ <NUM_LIT:0> ] ) == "<STR_LIT>" <EOL> assert len ( sql ) == <NUM_LIT:1> <EOL> class PrimaryKeyToMapTestCase ( DatabaseToMapTestCase ) : <EOL> """<STR_LIT>""" <EOL> map_pkey1 = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } <EOL> map_pkey2 = { '<STR_LIT>' : [ <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' ] } } } <EOL> map_pkey3 = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } <EOL> def test_primary_key_1 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == self . map_pkey1 <EOL> def test_primary_key_2 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == self . map_pkey1 <EOL> def test_primary_key_3 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == self . map_pkey2 <EOL> def test_primary_key_4 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == self . map_pkey3 <EOL> def test_primary_key_5 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == self . map_pkey3 <EOL> def test_primary_key_cluster ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : True } } } <EOL> def test_map_pk_comment ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" , COMMENT_STMT ] <EOL> dbmap = self . to_map ( stmts ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] [ '<STR_LIT:primary_key>' ] [ '<STR_LIT>' ] [ <EOL> '<STR_LIT:description>' ] == '<STR_LIT>' <EOL> class PrimaryKeyToSqlTestCase ( InputMapToSqlTestCase ) : <EOL> """<STR_LIT>""" <EOL> def test_create_with_primary_key ( self ) : <EOL> "<STR_LIT>" <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } , { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } } ) <EOL> sql = self . to_sql ( inmap ) <EOL> assert fix_indent ( sql [ <NUM_LIT:0> ] ) == "<STR_LIT>" <EOL> assert fix_indent ( sql [ <NUM_LIT:1> ] ) == "<STR_LIT>" "<STR_LIT>" <EOL> def test_add_primary_key ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' ] } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> assert fix_indent ( sql [ <NUM_LIT:0> ] ) == "<STR_LIT>" "<STR_LIT>" <EOL> def test_alter_primary_key_add ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ <EOL> "<STR_LIT>" <EOL> ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' ] } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> self . assertEqual ( len ( sql ) , <NUM_LIT:2> ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:0> ] ) , "<STR_LIT>" "<STR_LIT>" ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:1> ] ) , "<STR_LIT>" "<STR_LIT>" ) <EOL> def test_alter_primary_key_change ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ <EOL> "<STR_LIT>" <EOL> ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> self . assertEqual ( len ( sql ) , <NUM_LIT:2> ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:0> ] ) , "<STR_LIT>" "<STR_LIT>" ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:1> ] ) , "<STR_LIT>" "<STR_LIT>" ) <EOL> @ pytest . mark . xfail <EOL> def test_alter_primary_key_change_order ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> self . assertEqual ( len ( sql ) , <NUM_LIT:2> ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:0> ] ) , "<STR_LIT>" "<STR_LIT>" ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:1> ] ) , "<STR_LIT>" "<STR_LIT>" ) <EOL> @ pytest . mark . xfail <EOL> def test_alter_primary_key_change_order2 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> self . assertEqual ( len ( sql ) , <NUM_LIT:1> ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:0> ] ) , "<STR_LIT>" ) <EOL> def test_drop_primary_key ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } , <EOL> '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> assert sql == [ "<STR_LIT>" ] <EOL> def test_primary_key_clustered ( self ) : <EOL> "<STR_LIT>" <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : True } } } } ) <EOL> sql = self . to_sql ( inmap ) <EOL> assert sql [ <NUM_LIT:2> ] == "<STR_LIT>" <EOL> def test_primary_key_uncluster ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> assert fix_indent ( sql [ <NUM_LIT:0> ] ) == "<STR_LIT>" <EOL> class ForeignKeyToMapTestCase ( DatabaseToMapTestCase ) : <EOL> """<STR_LIT>""" <EOL> map_fkey1 = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : '<STR_LIT>' , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] <EOL> } <EOL> } } } <EOL> map_fkey2 = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:date>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] , '<STR_LIT>' : { <EOL> '<STR_LIT>' : '<STR_LIT>' , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] } } } } <EOL> map_fkey3 = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:date>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] , '<STR_LIT>' : { <EOL> '<STR_LIT>' : '<STR_LIT>' , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] } } } } <EOL> map_fkey4 = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:date>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' ] } } , <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : '<STR_LIT>' , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : '<STR_LIT>' , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] } } } } <EOL> def test_foreign_key_1 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == self . map_fkey1 <EOL> def test_foreign_key_2 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" <EOL> "<STR_LIT:)>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == self . map_fkey1 <EOL> def test_foreign_key_3 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == self . map_fkey2 <EOL> def test_foreign_key_4 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == self . map_fkey3 <EOL> def test_foreign_key_5 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == self . map_fkey4 <EOL> def test_foreign_key_actions ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> expmap = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : { '<STR_LIT>' : '<STR_LIT>' , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] } } } } <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == expmap <EOL> def test_cross_schema_foreign_key ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> t2map = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } <EOL> t1map = { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : '<STR_LIT>' , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] } } } } } <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == t2map <EOL> assert dbmap [ '<STR_LIT>' ] == t1map <EOL> def test_multiple_foreign_key ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> t1map = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } <EOL> t2map = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : '<STR_LIT>' , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] } } , <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : '<STR_LIT>' , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] } } } } <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == t1map <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == t2map <EOL> def test_foreign_key_dropped_column ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> t2map = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : '<STR_LIT>' , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] } } } } <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == t2map <EOL> def test_foreign_key_deferred ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> fks = dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] [ '<STR_LIT>' ] <EOL> assert not fks [ '<STR_LIT>' ] . get ( '<STR_LIT>' ) <EOL> assert not fks [ '<STR_LIT>' ] . get ( '<STR_LIT>' ) <EOL> assert fks [ '<STR_LIT>' ] . get ( '<STR_LIT>' ) <EOL> assert not fks [ '<STR_LIT>' ] . get ( '<STR_LIT>' ) <EOL> assert fks [ '<STR_LIT>' ] . get ( '<STR_LIT>' ) <EOL> assert fks [ '<STR_LIT>' ] . get ( '<STR_LIT>' ) <EOL> def test_foreign_key_match ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> t1map = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : { '<STR_LIT>' : '<STR_LIT>' , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] } } } } <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == t1map <EOL> def test_map_fk_comment ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" , COMMENT_STMT ] <EOL> dbmap = self . to_map ( stmts ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] [ '<STR_LIT>' ] [ '<STR_LIT>' ] [ <EOL> '<STR_LIT:description>' ] == '<STR_LIT>' <EOL> class ForeignKeyToSqlTestCase ( InputMapToSqlTestCase ) : <EOL> """<STR_LIT>""" <EOL> def test_create_with_foreign_key ( self ) : <EOL> "<STR_LIT>" <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( <EOL> { '<STR_LIT>' : { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : '<STR_LIT>' } } } } } ) <EOL> sql = self . to_sql ( inmap ) <EOL> crt1 = <NUM_LIT:0> <EOL> crt2 = <NUM_LIT:1> <EOL> if '<STR_LIT>' in sql [ <NUM_LIT:1> ] : <EOL> crt1 = <NUM_LIT:1> <EOL> crt2 = <NUM_LIT:0> <EOL> assert fix_indent ( sql [ crt1 ] ) == "<STR_LIT>" <EOL> assert fix_indent ( sql [ crt2 ] ) == "<STR_LIT>" <EOL> assert fix_indent ( sql [ <NUM_LIT:2> ] ) == "<STR_LIT>" "<STR_LIT>" <EOL> def test_create_foreign_key_deferred ( self ) : <EOL> "<STR_LIT>" <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( <EOL> { '<STR_LIT>' : { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : '<STR_LIT>' } } , <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : '<STR_LIT>' } , <EOL> '<STR_LIT>' : True } , <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : '<STR_LIT>' } , <EOL> '<STR_LIT>' : True , '<STR_LIT>' : True } } } } ) <EOL> sql = self . to_sql ( inmap ) <EOL> sql [ <NUM_LIT:0> : <NUM_LIT:2> ] = list ( sorted ( sql [ <NUM_LIT:0> : <NUM_LIT:2> ] ) ) <EOL> sql [ <NUM_LIT:2> : <NUM_LIT:5> ] = list ( sorted ( sql [ <NUM_LIT:2> : <NUM_LIT:5> ] ) ) <EOL> assert fix_indent ( sql [ <NUM_LIT:0> ] ) == "<STR_LIT>" <EOL> assert fix_indent ( sql [ <NUM_LIT:1> ] ) == "<STR_LIT>" "<STR_LIT>" <EOL> assert fix_indent ( sql [ <NUM_LIT:2> ] ) == "<STR_LIT>" "<STR_LIT>" <EOL> assert fix_indent ( sql [ <NUM_LIT:3> ] ) == "<STR_LIT>" "<STR_LIT>" <EOL> assert fix_indent ( sql [ <NUM_LIT:4> ] ) == "<STR_LIT>" "<STR_LIT>" "<STR_LIT>" <EOL> def test_add_foreign_key ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' ] } } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' ] , <EOL> '<STR_LIT>' : '<STR_LIT>' } } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:0> ] ) , "<STR_LIT>" "<STR_LIT>" ) <EOL> def test_alter_foreign_key1 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : '<STR_LIT>' } } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> self . assertEqual ( <NUM_LIT:2> , len ( sql ) ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:0> ] ) , <EOL> '<STR_LIT>' ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:1> ] ) , <EOL> '<STR_LIT>' '<STR_LIT>' ) <EOL> def test_alter_foreign_key_columns ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } ] , <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : '<STR_LIT>' } } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> self . assertEqual ( <NUM_LIT:2> , len ( sql ) ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:0> ] ) , <EOL> '<STR_LIT>' ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:1> ] ) , <EOL> '<STR_LIT>' '<STR_LIT>' ) <EOL> @ pytest . mark . xfail <EOL> def test_alter_foreign_key_column_order ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : '<STR_LIT>' } } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> self . assertEqual ( <NUM_LIT:2> , len ( sql ) ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:0> ] ) , <EOL> '<STR_LIT>' ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:1> ] ) , <EOL> '<STR_LIT>' ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:2> ] ) , <EOL> '<STR_LIT>' '<STR_LIT>' ) <EOL> def test_alter_foreign_key_change_actions ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } ] , <EOL> '<STR_LIT:primary_key>' : { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : '<STR_LIT>' } , <EOL> } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> self . assertEqual ( <NUM_LIT:2> , len ( sql ) ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:0> ] ) , <EOL> '<STR_LIT>' ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:1> ] ) , <EOL> '<STR_LIT>' '<STR_LIT>' '<STR_LIT>' ) <EOL> def test_alter_foreign_key_add_actions ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } ] , <EOL> '<STR_LIT:primary_key>' : { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : '<STR_LIT>' } , <EOL> } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> self . assertEqual ( <NUM_LIT:2> , len ( sql ) ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:0> ] ) , <EOL> '<STR_LIT>' ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:1> ] ) , <EOL> '<STR_LIT>' '<STR_LIT>' '<STR_LIT>' ) <EOL> def test_alter_foreign_key_drop_actions ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } ] , <EOL> '<STR_LIT:primary_key>' : { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : '<STR_LIT>' } , <EOL> } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> self . assertEqual ( <NUM_LIT:2> , len ( sql ) ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:0> ] ) , <EOL> '<STR_LIT>' ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:1> ] ) , <EOL> '<STR_LIT>' '<STR_LIT>' ) <EOL> def test_drop_foreign_key ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } , <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> assert sql == [ "<STR_LIT>" ] <EOL> def test_create_foreign_key_actions ( self ) : <EOL> "<STR_LIT>" <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : '<STR_LIT>' } } } } } ) <EOL> sql = self . to_sql ( inmap ) <EOL> assert fix_indent ( sql [ <NUM_LIT:2> ] ) == "<STR_LIT>" "<STR_LIT>" "<STR_LIT>" <EOL> def test_foreign_key_match ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : { '<STR_LIT>' : '<STR_LIT>' , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] } } } } , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> assert fix_indent ( sql [ <NUM_LIT:1> ] ) == "<STR_LIT>" "<STR_LIT>" <EOL> class UniqueConstraintToMapTestCase ( DatabaseToMapTestCase ) : <EOL> """<STR_LIT>""" <EOL> map_unique1 = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } <EOL> map_unique2 = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' ] } } } <EOL> map_unique3 = { '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } <EOL> def test_unique_1 ( self ) : <EOL> "<STR_LIT>" <EOL> dbmap = self . to_map ( [ "<STR_LIT>" ] ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == self . map_unique1 <EOL> def test_unique_2 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> self . assertEqual ( dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] , self . map_unique1 ) <EOL> def test_unique_3 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> if self . db . version < <NUM_LIT> : <EOL> self . map_unique2 . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' ] } } } ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == self . map_unique2 <EOL> def test_unique_4 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == self . map_unique3 <EOL> def test_unique_5 ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == self . map_unique3 <EOL> def test_map_unique_cluster ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" ] <EOL> dbmap = self . to_map ( stmts ) <EOL> assert dbmap [ '<STR_LIT>' ] [ '<STR_LIT>' ] == { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : True } } } <EOL> class UniqueConstraintToSqlTestCase ( InputMapToSqlTestCase ) : <EOL> """<STR_LIT>""" <EOL> def test_create_w_unique_constraint ( self ) : <EOL> "<STR_LIT>" <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } } ) <EOL> sql = self . to_sql ( inmap ) <EOL> assert fix_indent ( sql [ <NUM_LIT:0> ] ) == "<STR_LIT>" <EOL> assert fix_indent ( sql [ <NUM_LIT:1> ] ) == "<STR_LIT>" <EOL> def test_add_unique_constraint ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' , '<STR_LIT>' ] , <EOL> '<STR_LIT>' : True } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> assert fix_indent ( sql [ <NUM_LIT:0> ] ) == "<STR_LIT>" <EOL> def test_alter_unique_constraint ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" , <EOL> "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : True } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> self . assertEqual ( <NUM_LIT:2> , len ( sql ) ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:0> ] ) , <EOL> "<STR_LIT>" ) <EOL> self . assertEqual ( fix_indent ( sql [ <NUM_LIT:1> ] ) , <EOL> "<STR_LIT>" ) <EOL> def test_drop_unique_constraint ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } , <EOL> '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> assert sql == [ "<STR_LIT>" ] <EOL> def test_create_unique_clustered ( self ) : <EOL> "<STR_LIT>" <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : True } } } } ) <EOL> sql = self . to_sql ( inmap ) <EOL> assert sql [ <NUM_LIT:2> ] == "<STR_LIT>" <EOL> def test_unique_cluster ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : True } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> assert sql [ <NUM_LIT:0> ] == "<STR_LIT>" <EOL> class ConstraintCommentTestCase ( InputMapToSqlTestCase ) : <EOL> """<STR_LIT>""" <EOL> def test_check_constraint_with_comment ( self ) : <EOL> "<STR_LIT>" <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT:description>' : '<STR_LIT>' } } } } ) <EOL> sql = self . to_sql ( inmap ) <EOL> assert fix_indent ( sql [ <NUM_LIT:0> ] ) == "<STR_LIT>" <EOL> assert fix_indent ( sql [ <NUM_LIT:1> ] ) == "<STR_LIT>" <EOL> assert sql [ <NUM_LIT:2> ] == COMMENT_STMT <EOL> def test_comment_on_primary_key ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT:description>' : '<STR_LIT>' } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> self . assertEqual ( sql , [ COMMENT_STMT ] ) <EOL> def test_drop_foreign_key_comment ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , <EOL> "<STR_LIT>" <EOL> "<STR_LIT>" , <EOL> COMMENT_STMT ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' , '<STR_LIT>' : True } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT:primary_key>' : { '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] } } } , <EOL> '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : '<STR_LIT>' } } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> self . assertEqual ( sql , [ "<STR_LIT>" ] ) <EOL> def test_change_unique_constraint_comment ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" <EOL> "<STR_LIT>" , COMMENT_STMT ] <EOL> inmap = self . std_map ( ) <EOL> inmap [ '<STR_LIT>' ] . update ( { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT:description>' : "<STR_LIT>" } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> assert sql == [ "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> def test_constraint_comment_schema ( self ) : <EOL> "<STR_LIT>" <EOL> stmts = [ "<STR_LIT>" , "<STR_LIT>" <EOL> "<STR_LIT>" ] <EOL> inmap = self . std_map ( ) <EOL> inmap . update ( { '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT>' } } , <EOL> { '<STR_LIT>' : { '<STR_LIT:type>' : '<STR_LIT:text>' } } ] , <EOL> '<STR_LIT>' : { '<STR_LIT>' : { <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT:description>' : '<STR_LIT>' } } } } } ) <EOL> sql = self . to_sql ( inmap , stmts ) <EOL> assert sql [ <NUM_LIT:0> ] == "<STR_LIT>" "<STR_LIT>" <EOL> if __name__ == "<STR_LIT:__main__>" : <EOL> pytest . cmdline . main ( ) </s>
