def test_index_program_enrolled_users(self): """ Test that index_program_enrolled_users indexes an iterable of program-enrolled users """ with mute_signals(post_save): program_enrollments = [ ProgramEnrollmentFactory.build() for _ in range(10) ] with patch('search.indexing_api._index_program_enrolled_users_chunk', autospec=True, return_value=0) \ as index_chunk: index_program_enrolled_users(program_enrollments, chunk_size=4) assert index_chunk.call_count == 3 index_chunk.assert_any_call(program_enrollments[0:4])
def test_index_program_enrolled_users_missing_profiles(self, mock_on_commit): """ Test that index_program_enrolled_users doesn't index users missing profiles """ with mute_signals(post_save): program_enrollments = [ProgramEnrollmentFactory.build() for _ in range(10)] with patch( 'search.indexing_api._index_chunk', autospec=True, return_value=0 ) as index_chunk, patch( 'search.indexing_api.serialize_program_enrolled_user', autospec=True, side_effect=lambda x: None # simulate a missing profile ) as serialize_mock, patch( 'search.indexing_api.serialize_public_enrolled_user', autospec=True, side_effect=lambda x: x ) as serialize_public_mock: index_program_enrolled_users(program_enrollments) assert index_chunk.call_count == 0 assert serialize_public_mock.call_count == 0 assert serialize_mock.call_count == len(program_enrollments)
def test_index_program_enrolled_users_missing_profiles( self, mock_on_commit): """ Test that index_program_enrolled_users doesn't index users missing profiles """ with mute_signals(post_save): program_enrollments = [ ProgramEnrollmentFactory.build() for _ in range(10) ] with patch('search.indexing_api._index_chunk', autospec=True, return_value=0) as index_chunk, patch( 'search.indexing_api.serialize_program_enrolled_user', autospec=True, side_effect=lambda x: None # simulate a missing profile ) as serialize_mock, patch( 'search.indexing_api.serialize_public_enrolled_user', autospec=True, side_effect=lambda x: x) as serialize_public_mock: index_program_enrolled_users(program_enrollments) assert index_chunk.call_count == 0 assert serialize_public_mock.call_count == 0 assert serialize_mock.call_count == len(program_enrollments)