def test_get(self, mock_open, mock_read_file, mock_read_object, mock_cached, mock_index): cache = Cache('test') mock_cached.return_value = False value = cache.get('unknown_key') self.assertTrue(mock_cached.called) self.assertIsNone(value) mock_cached.return_value = True mock_read_object.return_value = 'read_value_object' mock_read_file.return_value = 'read_value_file' mock_cached.reset_mock() value = cache.get('cached_key', as_fileobj=False) self.assertTrue(mock_cached.called) self.assertTrue(mock_read_object.called) self.assertEqual(value, 'read_value_object') mock_cached.reset_mock() value = cache.get('cached_key', as_fileobj=True) self.assertTrue(mock_cached.called) self.assertTrue(mock_read_file.called) self.assertEqual(value, 'read_value_file')