def test_switch_program(self, browser, base_test_data, logged_in_staff):
"""
Switching programs should show a different set of users
"""
existing_program_user_count = settings.ELASTICSEARCH_DEFAULT_PAGE_SIZE
create_enrolled_user_batch(existing_program_user_count, program=base_test_data.program, is_staff=False)
new_program = ProgramFactory.create(live=True)
new_program_user_count = settings.ELASTICSEARCH_DEFAULT_PAGE_SIZE - 1
create_enrolled_user_batch(new_program_user_count, program=new_program, is_staff=False)
ProgramEnrollment.objects.create(program=new_program, user=logged_in_staff)
Role.objects.create(
role=Staff.ROLE_ID,
user=logged_in_staff,
program=new_program,
)
# Load the learners page for the existing program
browser.get("/learners")
browser.wait_until_element_count(By.CLASS_NAME, 'learner-result', existing_program_user_count)
# Switch programs and check that the correct number of users are returned
switcher = browser.driver.find_element_by_css_selector('.micromasters-header .Select-input')
switcher.send_keys(Keys.DOWN)
switcher.send_keys(Keys.ENTER)
browser.wait_until_element_count(By.CLASS_NAME, 'learner-result', new_program_user_count)
# Refresh browser and verify the count is the same
browser.get("/learners")
browser.wait_until_element_count(By.CLASS_NAME, 'learner-result', new_program_user_count)
评论列表
文章目录