'Submit the given score to the problem on behalf of the user'

def answer_problem(self, value=1, max_value=1):

    field_data_cache = FieldDataCache.cache_for_descriptor_descendents(self.course.id, self.user, self.course, depth=2)
    module = get_module(self.user, get_mock_request(self.user), self.problem.scope_ids.usage_id, field_data_cache)._xmodule
    grade_dict = {'value': value, 'max_value': max_value, 'user_id': self.user.id}
    module.system.publish(self.problem, 'grade', grade_dict)
