{ "id": "G0131", "category": "D", "object_type": "CLAS", "difficulty": 2, "release_target": "v816", "expected_outcome": "implement", "budget": { "max_tool_calls": 60, "max_activations": 15 }, "seed": [ { "type": "TABL", "name": "{{P}}PUPIL", "file": "seed/pupil.tabl.abap", "description": "Pupil master data of the driving school" }, { "type": "CLAS", "name": "{{P}}PUPIL_DATA", "file": "seed/pupil_data.clas.abap", "description": "Fills the pupil table with example data", "run": true } ], "contract": [ { "type": "CLAS", "name": "{{P}}DRIVING_TEST_CHECK" }, { "type": "CLAS", "name": "{{P}}CX_PUPIL_UNKNOWN" }, { "type": "CLAS", "name": "{{P}}CX_THEORY_MISSING" }, { "type": "CLAS", "name": "{{P}}CX_LESSONS_MISSING" }, { "type": "CLAS", "name": "{{P}}CX_FEE_UNPAID" }, { "type": "CLAS", "name": "{{P}}CX_RECENT_FAILURE" } ], "out_of_scope": [ "{{P}}PUPIL", "{{P}}PUPIL_DATA" ], "hidden_tests": [ { "type": "CLAS", "name": "{{P}}T_DRIVING_CHECK", "file": "hidden/t_driving_check.clas.abap", "description": "Hidden tests for the driving test booking check" } ], "reference": [ { "type": "CLAS", "name": "{{P}}CX_PUPIL_UNKNOWN", "file": "reference/cx_pupil_unknown.clas.abap", "description": "Pupil id is not in the pupil table" }, { "type": "CLAS", "name": "{{P}}CX_THEORY_MISSING", "file": "reference/cx_theory_missing.clas.abap", "description": "Theory exam is not passed" }, { "type": "CLAS", "name": "{{P}}CX_LESSONS_MISSING", "file": "reference/cx_lessons_missing.clas.abap", "description": "Too few driving lessons" }, { "type": "CLAS", "name": "{{P}}CX_FEE_UNPAID", "file": "reference/cx_fee_unpaid.clas.abap", "description": "Test fee is not paid" }, { "type": "CLAS", "name": "{{P}}CX_RECENT_FAILURE", "file": "reference/cx_recent_failure.clas.abap", "description": "Last practical test failed too recently" }, { "type": "CLAS", "name": "{{P}}DRIVING_TEST_CHECK", "file": "reference/driving_test_check.clas.abap", "description": "Checks if a pupil may book a practical driving test", "testclasses_file": "reference/driving_test_check.testclasses.abap" } ], "craft_checks": [ "method_length", "db_operation_in_loop" ] }