diff options
| author | mike bayer <mike_mp@zzzcomputing.com> | 2022-04-15 14:58:04 +0000 |
|---|---|---|
| committer | Gerrit Code Review <gerrit@ci3.zzzcomputing.com> | 2022-04-15 14:58:04 +0000 |
| commit | 07b9788690e45ea3a25cece6220cd255a16cadaf (patch) | |
| tree | 974fd5d639570977d310b8f507dbb5d7e89ba1eb /test/sql | |
| parent | dd414e7eaba595a333e593865196de1fd91fe6db (diff) | |
| parent | c932123bacad9bf047d160b85e3f95d396c513ae (diff) | |
| download | sqlalchemy-07b9788690e45ea3a25cece6220cd255a16cadaf.tar.gz | |
Merge "pep484: schema API" into main
Diffstat (limited to 'test/sql')
| -rw-r--r-- | test/sql/test_constraints.py | 2 | ||||
| -rw-r--r-- | test/sql/test_defaults.py | 39 | ||||
| -rw-r--r-- | test/sql/test_returning.py | 2 | ||||
| -rw-r--r-- | test/sql/test_sequences.py | 20 |
4 files changed, 54 insertions, 9 deletions
diff --git a/test/sql/test_constraints.py b/test/sql/test_constraints.py index 2661e6c8f..c417255af 100644 --- a/test/sql/test_constraints.py +++ b/test/sql/test_constraints.py @@ -863,6 +863,8 @@ class ConstraintCompilationTest(fixtures.TestBase, AssertsCompiledSQL): x.append_constraint(idx) self.assert_compile(schema.CreateIndex(idx), ddl) + x.to_metadata(MetaData()) + def test_index_against_text_separate(self): metadata = MetaData() idx = Index("y", text("some_function(q)")) diff --git a/test/sql/test_defaults.py b/test/sql/test_defaults.py index 52c779969..3742aa174 100644 --- a/test/sql/test_defaults.py +++ b/test/sql/test_defaults.py @@ -23,6 +23,7 @@ from sqlalchemy.testing import eq_ from sqlalchemy.testing import expect_warnings from sqlalchemy.testing import fixtures from sqlalchemy.testing import mock +from sqlalchemy.testing.assertions import expect_deprecated from sqlalchemy.testing.schema import Column from sqlalchemy.testing.schema import Table from sqlalchemy.types import TypeDecorator @@ -503,15 +504,45 @@ class DefaultRoundTripTest(fixtures.TablesTest): def teardown_test(self): self.default_generator["x"] = 50 - def test_standalone(self, connection): + def test_standalone_via_exec_removed(self, connection): t = self.tables.default_test - x = connection.execute(t.c.col1.default) - y = connection.execute(t.c.col2.default) - z = connection.execute(t.c.col3.default) + + with expect_deprecated( + r"Using the .execute\(\) method to invoke a " + r"DefaultGenerator object is deprecated; please use " + r"the .scalar\(\) method." + ): + x = connection.execute(t.c.col1.default) + with expect_deprecated( + r"Using the .execute\(\) method to invoke a " + r"DefaultGenerator object is deprecated; please use " + r"the .scalar\(\) method." + ): + y = connection.execute(t.c.col2.default) + with expect_deprecated( + r"Using the .execute\(\) method to invoke a " + r"DefaultGenerator object is deprecated; please use " + r"the .scalar\(\) method." + ): + z = connection.execute(t.c.col3.default) + + def test_standalone_default_scalar(self, connection): + t = self.tables.default_test + x = connection.scalar(t.c.col1.default) + y = connection.scalar(t.c.col2.default) + z = connection.scalar(t.c.col3.default) assert 50 <= x <= 57 eq_(y, "imthedefault") eq_(z, self.f) + def test_standalone_function_execute(self, connection): + ctexec = connection.execute(self.currenttime) + assert isinstance(ctexec.scalar(), datetime.date) + + def test_standalone_function_scalar(self, connection): + ctexec = connection.scalar(self.currenttime) + assert isinstance(ctexec, datetime.date) + def test_insert(self, connection): t = self.tables.default_test diff --git a/test/sql/test_returning.py b/test/sql/test_returning.py index ffbab3223..bacdbaf3f 100644 --- a/test/sql/test_returning.py +++ b/test/sql/test_returning.py @@ -543,7 +543,7 @@ class SequenceReturningTest(fixtures.TablesTest): ) eq_(r.first(), tuple([testing.db.dialect.default_sequence_base])) eq_( - connection.execute(self.sequences.tid_seq), + connection.scalar(self.sequences.tid_seq), testing.db.dialect.default_sequence_base + 1, ) diff --git a/test/sql/test_sequences.py b/test/sql/test_sequences.py index d11961862..be74153ce 100644 --- a/test/sql/test_sequences.py +++ b/test/sql/test_sequences.py @@ -14,6 +14,7 @@ from sqlalchemy.testing import eq_ from sqlalchemy.testing import fixtures from sqlalchemy.testing import is_false from sqlalchemy.testing import is_true +from sqlalchemy.testing.assertions import expect_deprecated from sqlalchemy.testing.assertsql import AllOf from sqlalchemy.testing.assertsql import CompiledSQL from sqlalchemy.testing.assertsql import EachOf @@ -117,14 +118,25 @@ class SequenceExecTest(fixtures.TestBase): def test_execute(self, connection): s = Sequence("my_sequence") - self._assert_seq_result(connection.execute(s)) + self._assert_seq_result(connection.scalar(s)) - def test_execute_optional(self, connection): + def test_execute_deprecated(self, connection): + + s = Sequence("my_sequence", optional=True) + + with expect_deprecated( + r"Using the .execute\(\) method to invoke a " + r"DefaultGenerator object is deprecated; please use " + r"the .scalar\(\) method." + ): + self._assert_seq_result(connection.execute(s)) + + def test_scalar_optional(self, connection): """test dialect executes a Sequence, returns nextval, whether or not "optional" is set""" s = Sequence("my_sequence", optional=True) - self._assert_seq_result(connection.execute(s)) + self._assert_seq_result(connection.scalar(s)) def test_execute_next_value(self, connection): """test func.next_value().execute()/.scalar() works @@ -341,7 +353,7 @@ class SequenceTest(fixtures.TestBase, testing.AssertsCompiledSQL): seq.create(testing.db) try: with testing.db.connect() as conn: - values = [conn.execute(seq) for i in range(3)] + values = [conn.scalar(seq) for i in range(3)] start = seq.start or testing.db.dialect.default_sequence_base inc = seq.increment or 1 eq_(values, list(range(start, start + inc * 3, inc))) |
