@@ -112,6 +112,7 @@ def make_one(self, display_name=None, **kw):
112112 """
113113 Creates a XBlock SGA for testing purpose.
114114 """
115+ weight = kw .get ('weight' , 0 )
115116 field_data = DictFieldData (kw )
116117 block = StaffGradedAssignmentXBlock (self .runtime , field_data , self .scope_ids )
117118 block .location = Location (
@@ -126,6 +127,7 @@ def make_one(self, display_name=None, **kw):
126127 block .display_name = display_name
127128
128129 block .start = datetime .datetime (2010 , 5 , 12 , 2 , 42 , tzinfo = pytz .utc )
130+ block .weight = weight
129131 modulestore ().create_item (
130132 self .staff .username , block .location .course_key , block .location .block_type , block .location .block_id
131133 )
@@ -231,7 +233,7 @@ def test_student_view(self, fragment, render_template):
231233 """
232234 Test student view renders correctly.
233235 """
234- block = self .make_one ("Custom name" )
236+ block = self .make_one ("Custom name" , weight = 12 )
235237 self .personalize (block , ** self .make_student (block , 'fred' ))
236238 fragment = block .student_view ()
237239 render_template .assert_called_once ()
@@ -254,6 +256,7 @@ def test_student_view(self, fragment, render_template):
254256 self .assertEqual (student_state ['upload_allowed' ], True )
255257 self .assertEqual (student_state ['max_score' ], 100 )
256258 self .assertEqual (student_state ['graded' ], None )
259+ assert student_state ['weight' ] == 12
257260 fragment .add_css .assert_called_once_with (
258261 DummyResource ("static/css/edx_sga.css" ))
259262 fragment .initialize_js .assert_called_once_with (
@@ -385,7 +388,7 @@ def point_positive_int_test():
385388 block .save_sga (mock .Mock (body = '{}' ))
386389 self .assertEqual (block .display_name , "Staff Graded Assignment" )
387390 self .assertEqual (block .points , 100 )
388- self .assertEqual (block .weight , None )
391+ self .assertEqual (block .weight , 0 )
389392 block .save_sga (mock .Mock (method = "POST" , body = json .dumps ({
390393 "display_name" : "Test Block" ,
391394 "points" : str (orig_score ),
@@ -661,7 +664,7 @@ def test_get_staff_grading_data(self):
661664 """
662665 Test fetch grading data for staff members.
663666 """
664- block = self .make_one ()
667+ block = self .make_one (weight = 15 )
665668 barney = self .make_student (
666669 block , "barney" ,
667670 filename = "foo.txt" ,
@@ -672,6 +675,7 @@ def test_get_staff_grading_data(self):
672675 block , "fred" ,
673676 filename = "bar.txt" )
674677 data = block .get_staff_grading_data (None ).json_body # lint-amnesty, pylint: disable=redefined-outer-name
678+ assert data ['weight' ] == 15
675679 assignments = sorted (data ['assignments' ], key = lambda x : x ['username' ])
676680
677681 barney_assignment , fred_assignment = assignments
@@ -757,8 +761,10 @@ def test_enter_grade_staff(self):
757761 'submission_id' : fred ['submission' ]['uuid' ],
758762 'grade' : 9 ,
759763 'comment' : "Good!" }))
760- state = json .loads (StudentModule .objects .get (
761- pk = fred ['module' ].id ).state )
764+ student_module = StudentModule .objects .get (pk = fred ['module' ].id )
765+ state = json .loads (student_module .state )
766+ assert student_module .grade == 9
767+ assert student_module .max_grade == block .max_score ()
762768 self .assertEqual (state ['comment' ], 'Good!' )
763769 self .assertEqual (state ['staff_score' ], 9 )
764770
@@ -802,7 +808,9 @@ def test_remove_grade(self):
802808 'student_id' : item .student_id ,
803809 })
804810 block .remove_grade (request )
805- state = json .loads (StudentModule .objects .get (pk = module .id ).state )
811+ student_module = StudentModule .objects .get (pk = module .id )
812+ state = json .loads (student_module .state )
813+ assert student_module .grade == 0
806814 self .assertEqual (block .get_score (item .student_id ), None )
807815 self .assertEqual (state ['comment' ], '' )
808816
0 commit comments