MCPcopy
hub / github.com/sqlalchemy/sqlalchemy / test_index_create

Method test_index_create

test/sql/test_constraints.py:653–693  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

651
652 @testing.provide_metadata
653 def test_index_create(self):
654 metadata = self.metadata
655
656 employees = Table(
657 "employees",
658 metadata,
659 Column("id", Integer, primary_key=True),
660 Column("first_name", String(30)),
661 Column("last_name", String(30)),
662 Column("email_address", String(30)),
663 )
664
665 i = Index(
666 "employee_name_index",
667 employees.c.last_name,
668 employees.c.first_name,
669 )
670 assert i in employees.indexes
671
672 i2 = Index(
673 "employee_email_index", employees.c.email_address, unique=True
674 )
675 assert i2 in employees.indexes
676
677 self.assert_sql_execution(
678 testing.db,
679 lambda: metadata.create_all(testing.db, checkfirst=False),
680 RegexSQL("^CREATE TABLE"),
681 AllOf(
682 CompiledSQL(
683 "CREATE INDEX employee_name_index ON "
684 "employees (last_name, first_name)",
685 [],
686 ),
687 CompiledSQL(
688 "CREATE UNIQUE INDEX employee_email_index ON "
689 "employees (email_address)",
690 [],
691 ),
692 ),
693 )
694
695 @testing.provide_metadata
696 def test_index_create_camelcase(self):

Callers

nothing calls this directly

Calls 9

TableClass · 0.90
ColumnClass · 0.90
StringClass · 0.90
IndexClass · 0.90
RegexSQLClass · 0.90
AllOfClass · 0.90
CompiledSQLClass · 0.90
assert_sql_executionMethod · 0.80
create_allMethod · 0.80

Tested by

no test coverage detected