MCPcopy
hub / github.com/sqlalchemy/sqlalchemy / test_hints

Method test_hints

test/orm/test_query.py:5811–5849  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

5809 __dialect__ = "default"
5810
5811 def test_hints(self):
5812 User = self.classes.User
5813
5814 from sqlalchemy.dialects import mysql
5815
5816 dialect = mysql.dialect()
5817
5818 sess = fixture_session()
5819
5820 self.assert_compile(
5821 sess.query(User).with_hint(
5822 User, "USE INDEX (col1_index,col2_index)"
5823 ),
5824 "SELECT users.id AS users_id, users.name AS users_name "
5825 "FROM users USE INDEX (col1_index,col2_index)",
5826 dialect=dialect,
5827 )
5828
5829 self.assert_compile(
5830 sess.query(User).with_hint(
5831 User, "WITH INDEX col1_index", "sybase"
5832 ),
5833 "SELECT users.id AS users_id, users.name AS users_name "
5834 "FROM users",
5835 dialect=dialect,
5836 )
5837
5838 ualias = aliased(User)
5839 self.assert_compile(
5840 sess.query(User, ualias)
5841 .with_hint(ualias, "USE INDEX (col1_index,col2_index)")
5842 .join(ualias, ualias.id > User.id),
5843 "SELECT users.id AS users_id, users.name AS users_name, "
5844 "users_1.id AS users_1_id, users_1.name AS users_1_name "
5845 "FROM users INNER JOIN users AS users_1 "
5846 "USE INDEX (col1_index,col2_index) "
5847 "ON users_1.id > users.id",
5848 dialect=dialect,
5849 )
5850
5851 def test_statement_hints(self):
5852 User = self.classes.User

Callers

nothing calls this directly

Calls 7

fixture_sessionFunction · 0.90
aliasedFunction · 0.90
assert_compileMethod · 0.80
dialectMethod · 0.45
with_hintMethod · 0.45
queryMethod · 0.45
joinMethod · 0.45

Tested by

no test coverage detected