(self, user_address_fixture)
| 1112 | eq_(list(u1.addresses), []) |
| 1113 | |
| 1114 | def test_noload_add(self, user_address_fixture): |
| 1115 | # test that a load of User.addresses is not emitted |
| 1116 | # when flushing an add |
| 1117 | User, Address = user_address_fixture() |
| 1118 | |
| 1119 | sess = fixture_session() |
| 1120 | u1 = User(name="jack", addresses=[Address(email_address="a1")]) |
| 1121 | sess.add(u1) |
| 1122 | sess.commit() |
| 1123 | |
| 1124 | u1_id = u1.id |
| 1125 | sess.expire_all() |
| 1126 | |
| 1127 | u1.addresses.add(Address(email_address="a2")) |
| 1128 | |
| 1129 | self.assert_sql_execution( |
| 1130 | testing.db, |
| 1131 | sess.flush, |
| 1132 | CompiledSQL( |
| 1133 | "SELECT users.id, users.name " |
| 1134 | "FROM users WHERE users.id = :pk_1", |
| 1135 | lambda ctx: [{"pk_1": u1_id}], |
| 1136 | ), |
| 1137 | CompiledSQL( |
| 1138 | "INSERT INTO addresses (user_id, email_address) " |
| 1139 | "VALUES (:user_id, :email_address)", |
| 1140 | lambda ctx: [{"email_address": "a2", "user_id": u1_id}], |
| 1141 | ), |
| 1142 | ) |
| 1143 | |
| 1144 | def test_noload_remove(self, user_address_fixture): |
| 1145 | # test that a load of User.addresses is not emitted |
nothing calls this directly
no test coverage detected