def test_hydrating_is_observed(self): DB.begin_transaction("dev") user = Observer.hydrate({"id": 10, "name": "joe"}) self.assertEqual(TestM.observed_hydrating, 1) self.assertEqual(TestM.observed_hydrated, 1) DB.rollback("dev")
def test_should_return_connection_with_enabled_logs(self): connection = DB.begin_transaction("dev") should_log_queries = connection.full_details.get("log_queries") DB.commit("dev") self.assertTrue(should_log_queries)
def test_associate_records(self): DB.begin_transaction("dev") user = User.first() articles = [Articles.hydrate({"id": 1, "title": "associate records"})] user.save_many("articles", articles) DB.rollback("dev")
def test_should_disable_log_queries_in_connection(self): connection = DB.begin_transaction("dev") connection.disable_query_log() should_log_queries = connection.full_details.get("log_queries") self.assertFalse(should_log_queries) connection.enable_query_log() should_log_queries = connection.full_details.get("log_queries") DB.commit("dev") self.assertTrue(should_log_queries)
def test_transaction_globally(self): connection = DB.begin_transaction("dev") self.assertEqual(connection, self.get_builder().new_connection()) DB.commit("dev") DB.begin_transaction("dev") DB.rollback("dev")
__connection__ = "dev" @morph_to("record_type", "record_id") def record(self): return self class User(Model): __connection__ = "dev" _eager_loads = () DB.morph_map({"user": User, "article": Articles}) class TestRelationships(unittest.TestCase): maxDiff = None def test_can_get_polymorphic_relation(self): likes = Like.get() for like in likes: self.assertIsInstance(like.record, (Articles, User)) def test_can_get_eager_load_polymorphic_relation(self): likes = Like.with_("record").get() for like in likes: self.assertIsInstance(like.record, (Articles, User))