本文整理汇总了Python中staxing.helper.Teacher.add_assignment方法的典型用法代码示例。如果您正苦于以下问题:Python Teacher.add_assignment方法的具体用法?Python Teacher.add_assignment怎么用?Python Teacher.add_assignment使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类staxing.helper.Teacher
的用法示例。
在下文中一共展示了Teacher.add_assignment方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: TestStaxingTutorTeacher
# 需要导入模块: from staxing.helper import Teacher [as 别名]
# 或者: from staxing.helper.Teacher import add_assignment [as 别名]
class TestStaxingTutorTeacher(unittest.TestCase):
"""Staxing case tests."""
def setUp(self):
"""Pretest settings."""
self.teacher = Teacher(use_env_vars=True)
self.teacher.username = os.getenv('TEACHER_USER_MULTI',
self.teacher.username)
self.teacher.set_window_size(height=700, width=1200)
self.teacher.login()
self.teacher.select_course(title='High School Physics')
def tearDown(self):
"""Test destructor."""
try:
self.teacher.driver.quit()
except:
pass
@pytest.mark.skipif(str(301) not in TESTS, reason='Excluded')
def test_add_reading_assignment_individual_publish(self):
"""Build reading assignments."""
# Reading, individual periods, publish
assignment_title = 'Reading-%s' % Assignment.rword(5)
left = randint(5, 20)
right = left + randint(1, 10)
start_date_1 = self.teacher.date_string(day_delta=left)
end_date_1 = self.teacher.date_string(day_delta=left + right)
start_date_2 = self.teacher.date_string(day_delta=left + 1)
end_date_2 = self.teacher.date_string(day_delta=left + right + 1)
start_time_2 = '6:30 am'
end_time_2 = '11:59 pm'
start_date_3 = self.teacher.date_string(day_delta=left + 2)
end_date_3 = self.teacher.date_string(day_delta=left + right + 2)
reading_options = self.teacher.get_book_sections()
reading_start = randint(0, (len(reading_options) - 1))
reading_end = reading_start + randint(1, 5)
reading_list = reading_options[reading_start:reading_end]
self.teacher.add_assignment(
assignment='reading',
args={
'title': assignment_title,
'description': 'Staxing test reading - individual periods - ' +
'publish',
'periods': {
'First': (start_date_1, end_date_1),
'Second': ((start_date_2, start_time_2),
(end_date_2, end_time_2)),
'Third': (start_date_3, end_date_3),
},
'reading_list': reading_list,
'status': 'publish',
'break_point': None,
}
)
assert('courses' in self.teacher.current_url()), \
'Not at dashboard'
self.teacher.rotate_calendar(end_date_1)
reading = self.teacher.find(
By.XPATH,
'//label[text()="%s"]' % assignment_title
)
time.sleep(5.0)
assert(reading), '%s not publishing on %s' % (assignment_title,
end_date_3)
@pytest.mark.skipif(str(302) not in TESTS, reason='Excluded')
def test_add_reading_assignment_all_publish(self):
"""Build reading assignments."""
# Reading, all periods, publish
assignment_title = 'Reading-%s' % Assignment.rword(5)
left = randint(5, 20)
right = left + randint(1, 10)
start_date_1 = self.teacher.date_string(day_delta=left)
end_date_1 = self.teacher.date_string(day_delta=left + right)
start_date_2 = self.teacher.date_string(day_delta=left + 1)
end_date_2 = self.teacher.date_string(day_delta=left + right + 1)
reading_options = self.teacher.get_book_sections()
reading_start = randint(0, (len(reading_options) - 1))
reading_end = reading_start + randint(1, 5)
reading_list = reading_options[reading_start:reading_end]
self.teacher.add_assignment(
assignment='reading',
args={
'title': assignment_title,
'description': 'Staxing test reading - all periods - publish',
'periods': {
'First': (start_date_1, end_date_1),
'all': (start_date_2, end_date_2),
},
'reading_list': reading_list,
'status': 'publish',
'break_point': None,
}
)
assert('courses' in self.teacher.current_url()), \
'Not at dashboard'
self.teacher.rotate_calendar(end_date_1)
reading = self.teacher.find(
By.XPATH,
#.........这里部分代码省略.........
示例2: TestViewTheCalendarDashboard
# 需要导入模块: from staxing.helper import Teacher [as 别名]
# 或者: from staxing.helper.Teacher import add_assignment [as 别名]
#.........这里部分代码省略.........
self.teacher.find(By.CLASS_NAME, 'viewTeacherPerformanceForecast'). \
find_element_by_tag_name('a'). \
click()
self.teacher.page.wait_for_page_load()
assert('guide' in self.teacher.current_url()), \
'Not viewing the performance forecast'
self.ps.test_updates['passed'] = True
# Case C7983 - 006 - Teacher | View a reading assignment summary
@pytest.mark.skipif(str(7983) not in TESTS, reason='Excluded')
def test_teacher_view_a_reading_assignment_summary_7983(self):
"""View a reading assignment summary.
Steps:
If the user has more than one course, click on a Tutor course name
Create a reading assignment
Click on the reading assignment on the calendar
Expected Result:
The teacher is presented with the reading assignment summary
"""
self.ps.test_updates['name'] = 't1.13.006' \
+ inspect.currentframe().f_code.co_name[4:]
self.ps.test_updates['tags'] = ['t1', 't1.13', 't1.13.006', '7983']
self.ps.test_updates['passed'] = False
# self.teacher.select_course(appearance='physics')
# create an assignment
assignment_name = 'reading-%s' % randint(100, 999)
today = datetime.date.today()
begin = (today + datetime.timedelta(days=2)).strftime('%m/%d/%Y')
end = (today + datetime.timedelta(days=5)).strftime('%m/%d/%Y')
self.teacher.add_assignment(
assignment='reading',
args={
'title': assignment_name,
'description': 'description',
'periods': {'all': (begin, end)},
'reading_list': ['1.1'],
'status': 'publish',
}
)
# click on assignment
self.teacher.wait.until(
expect.presence_of_element_located(
(By.XPATH, '//label[contains(text(), "%s")]' % assignment_name)
)
).click()
# check that it opened
self.teacher.wait.until(
expect.presence_of_element_located(
(By.XPATH,
'//*[@class="modal-title" and ' +
'contains(text(), "%s")]' % assignment_name)
)
)
self.ps.test_updates['passed'] = True
# Case C7984 - 007 - Teacher | View a homework assignment summary
@pytest.mark.skipif(str(7984) not in TESTS, reason='Excluded')
def test_teacher_view_a_homework_assignment_summary_7984(self):
"""View a homework assignment summary.
Steps:
示例3: TestCreateNewQuestionAndAssignmentTypes
# 需要导入模块: from staxing.helper import Teacher [as 别名]
# 或者: from staxing.helper.Teacher import add_assignment [as 别名]
#.........这里部分代码省略.........
def test_teacher_each_part_of_a_multipart_question_counts_as_14743(self):
"""Multi-part questions count as seperate problems when scored.
Steps:
Go to Tutor
Click on the 'Login' button
Log in as teacher03
Click "College Introduction to Sociology"
Go to "Student Scores"
Pick a homework that has multipart question
Click "Review"
Expected Result:
There is a breadcrumb for each part of a multipart question
"""
self.ps.test_updates['name'] = 't2.12.004' \
+ inspect.currentframe().f_code.co_name[4:]
self.ps.test_updates['tags'] = ['t2', 't2.12', 't2.12.004', '14743']
self.ps.test_updates['passed'] = False
# Test steps and verification assertions
# create a hw with a multi part question, and gice it a randomized name
# ID: [email protected] is multi part
self.teacher.login()
self.teacher.find(
By.XPATH,
'//div[@data-appearance="intro_sociology"]' +
'//a[not(contains(@href,"/cc-dashboard"))]'
).click()
assignment_name = "homework-%s" % randint(100, 999)
today = datetime.date.today()
begin = (today + datetime.timedelta(days=0)).strftime('%m/%d/%Y')
end = (today + datetime.timedelta(days=100)).strftime('%m/%d/%Y')
self.teacher.add_assignment(
assignment='homework',
args={
'title': assignment_name,
'description': 'description',
'periods': {'all': (begin, end)},
'problems': {'1.1': ['[email protected]'], },
'status': 'publish',
}
)
self.teacher.open_user_menu()
self.teacher.find(
By.LINK_TEXT, 'Student Scores'
).click()
self.teacher.page.wait_for_page_load()
# can just click the first review because assignemnt just created
# and should be the most recent one
self.teacher.find(
By.LINK_TEXT, 'Review'
).click()
cards = self.teacher.find_all(
By.XPATH, '//div[contains(@class,"card-body")]')
questions = self.teacher.find_all(
By.XPATH, '//div[contains(@class,"openstax-question")]')
breadcrumbs = self.teacher.find_all(
By.XPATH, '//span[contains(@class,"openstax-breadcrumb")]')
assert(len(questions) == len(breadcrumbs)), \
'breadcrumbs and questions not equal'
assert(len(cards) < len(breadcrumbs)), \
'multipart question card has multiple questions,' + \
'not matching up with breadcrumbs'
self.ps.test_updates['passed'] = True
示例4: TestSimplifyAndImproveReadings
# 需要导入模块: from staxing.helper import Teacher [as 别名]
# 或者: from staxing.helper.Teacher import add_assignment [as 别名]
class TestSimplifyAndImproveReadings(unittest.TestCase):
"""T2.13 - Simplify and Improve Readings."""
def setUp(self):
"""Pretest settings."""
self.ps = PastaSauce()
self.desired_capabilities["name"] = self.id()
self.teacher = Teacher(use_env_vars=True, pasta_user=self.ps, capabilities=self.desired_capabilities)
# create a reading for the student to work
self.teacher.login()
self.assignment_name = "t1.18 reading-%s" % randint(100, 999)
today = datetime.date.today()
begin = today.strftime("%m/%d/%Y")
end = (today + datetime.timedelta(days=randint(1, 10))).strftime("%m/%d/%Y")
self.teacher.add_assignment(
assignment="reading",
args={
"title": self.assignment_name,
"description": chomsky(),
"periods": {"all": (begin, end)},
"reading_list": ["1.1", "1.2"],
"status": "publish",
},
)
self.teacher.wait.until(
expect.visibility_of_element_located((By.XPATH, '//div[contains(@class,"calendar-container")]'))
)
self.teacher.logout()
# login as a student to work the reading
self.student = Student(
existing_driver=self.teacher.driver,
use_env_vars=True,
pasta_user=self.ps,
capabilities=self.desired_capabilities,
)
self.student.login()
self.student.wait.until(expect.visibility_of_element_located((By.LINK_TEXT, "This Week")))
reading = self.student.driver.find_element(By.XPATH, '//span[text()="%s"]' % self.assignment_name)
self.teacher.driver.execute_script("return arguments[0].scrollIntoView();", reading)
self.teacher.driver.execute_script("window.scrollBy(0, -80);")
reading.click()
def tearDown(self):
"""Test destructor."""
self.ps.update_job(job_id=str(self.teacher.driver.session_id), **self.ps.test_updates)
self.student = None
try:
self.teacher.delete()
except:
pass
# 14745 - 001 - Student | Relative size and progress are displayed while
# working a reading assignment
@pytest.mark.skipif(str(14745) not in TESTS, reason="Excluded")
def test_student_relative_size_and_progress_are_displayed_whil_14745(self):
"""Size and progress are displayed while working a reading.
Steps:
Go to Tutor
Click on the 'Login' button
Enter the student user account in the username and password text boxes
Click on the 'Sign in' button
If the user has more than one course, click on a Tutor course name
Click on a reading assignment
Click on the right arrow
Expected Result:
The progress bar at the top reflects how far along you are as you work
through the reading assignment
"""
self.ps.test_updates["name"] = "t2.13.001" + inspect.currentframe().f_code.co_name[4:]
self.ps.test_updates["tags"] = ["t2", "t2.13", "t2.13.001", "14745"]
self.ps.test_updates["passed"] = False
# Test steps and verification assertions
self.student.driver.find_element(By.XPATH, '//div[contains(@class,"progress-bar progress-bar-success")]')
self.ps.test_updates["passed"] = True
# 14746 - 002 - Student | Access prior milestones in the reading assignment
# with breadcrumbs
@pytest.mark.skipif(str(14746) not in TESTS, reason="Excluded")
def test_student_access_prior_milestones_in_the_reading_assign_14746(self):
"""Access prior milestones in the reading assignment with breadcrumbs.
Steps:
If the user has more than one course, click on a Tutor course name
Click on a reading assignment
Click on the icon next to the calendar on the header
Expected Result:
The user is presented with prior milestones
"""
self.ps.test_updates["name"] = "t2.13.002" + inspect.currentframe().f_code.co_name[4:]
self.ps.test_updates["tags"] = ["t2", "t2.13", "t2.13.002", "14746"]
self.ps.test_updates["passed"] = False
# Test steps and verification assertions
self.student.find(By.CSS_SELECTOR, "a.paging-control.next").click()
self.student.sleep(1)
#.........这里部分代码省略.........