def setUp(self): connection = MagicMock(spec=Connection) cursor = MagicMock(spec=Cursor) connection.cursor.return_value = cursor cursor.__aenter__ = CoroutineMock(return_value=cursor) votes = [('user_a', 'item_a', 0), ('user_a', 'item_b', 1), ('user_b', 'item_a', 1), ('user_b', 'item_b', 1)] vote_scale = (0, 1) cursor.fetchall = CoroutineMock(return_value=votes) cursor.fetchone = CoroutineMock(return_value=vote_scale) cursor.execute = CoroutineMock() self.accessor = DataAccessor(connection) self.connection = connection self.cursor = cursor