def test_format(self, mock_cache_refresh):
"""Test that get_user_program_info fetches edx data and returns a list of Program data"""
result = api.get_user_program_info(self.user, self.edx_client)
assert mock_cache_refresh.call_count == len(CachedEdxDataApi.SUPPORTED_CACHES)
for cache_type in CachedEdxDataApi.SUPPORTED_CACHES:
mock_cache_refresh.assert_any_call(self.user, self.edx_client, cache_type)
assert isinstance(result, dict)
assert 'is_edx_data_fresh' in result
assert result['is_edx_data_fresh'] is False
assert 'programs' in result
assert len(result['programs']) == 2
for i in range(2):
expected = {
"id": self.expected_programs[i].id,
"description": self.expected_programs[i].description,
"title": self.expected_programs[i].title,
"financial_aid_availability": self.expected_programs[i].financial_aid_availability,
}
assert is_subset_dict(expected, result['programs'][i])
评论列表
文章目录