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])
예제 #2
0
 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)