def test_line_count_short(): result = grader.grade(input_data, quality, '1 2 1 1\n123\n') assert (result['score'] == 0.0)
def test_objective_line_short(): result = grader.grade(input_data, quality, '2 \n1 2 1 1\n123\n') assert (result['score'] == 0.0)
def test_solution_line_short(): result = grader.grade(input_data, quality, '2 0\n1 2 1 \n123\n') assert (result['score'] == 0.0)
def test_objective_value_warning(): result = grader.grade(input_data, quality, '4 0\n1 2 1 1\n123\n') assert (result['score'] == 1.0) assert ('Warning' in result['feedback'])
def test_neq_violated(): result = grader.grade(input_data, quality, '1 0\n1 1 1 1\n123\n') assert (result['score'] == 0.0)
def test_feasible_credit(): result = grader.grade(input_data, quality, '4 0\n1 2 3 4\n123\n') assert (result['score'] == 0.3)
def test_partial_credit_timelimit(): result = grader.grade(input_data, quality, '2 0\n1 2 1 1\n99999\n') assert (result['score'] == 0.7) assert ('runtime exceeded' in result['feedback'])
def test_full_credit_opt_neg(): result = grader.grade(input_data, quality, '2 -99\n1 2 1 1\n123\n') assert (result['score'] == 1.0)
def test_partial_credit(): result = grader.grade(input_data, quality, greedy_submission) assert (result['score'] == 0.7)
def test_full_credit(): result = grader.grade(input_data, quality, opt_submission) assert (result['score'] == 1.0)
def test_alpha_time(): result = grader.grade(input_data, quality, '2 0\n1 2 1 1\n123d\n') assert (result['score'] == 0.0)
def test_float_solution(): result = grader.grade(input_data, quality, '2 0\n1 2.1 1 1\n123\n') assert (result['score'] == 0.0)
def test_alpha_optflag(): result = grader.grade(input_data, quality, '2 b\n1 2 1 1\n123\n') assert (result['score'] == 0.0)
def test_alpha_objective(): result = grader.grade(input_data, quality, 'a 0\n1 2 1 1\n123\n') assert (result['score'] == 0.0)