Pipeline controller: plan 2 (hard +, error +50 %), backlog throttle, 2 trajectory workers, stop rules, summaries every 50; budget reserve
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
16
tasks_gen/train/G1317/generation.json
Normal file
16
tasks_gen/train/G1317/generation.json
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"id": "G1317",
|
||||
"pool": "train",
|
||||
"category": "K",
|
||||
"base_task": "G1015",
|
||||
"style": "incomplete",
|
||||
"tool_schema": null,
|
||||
"attempts": [
|
||||
{
|
||||
"stage": "validate",
|
||||
"oracle": 100.0,
|
||||
"null": 0
|
||||
}
|
||||
],
|
||||
"accepted": true
|
||||
}
|
||||
169
tasks_gen/train/G1317/hidden/t02_hidden.clas.abap
Normal file
169
tasks_gen/train/G1317/hidden/t02_hidden.clas.abap
Normal file
@@ -0,0 +1,169 @@
|
||||
CLASS {{p}}t02_hidden DEFINITION PUBLIC FINAL CREATE PUBLIC
|
||||
FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
|
||||
PRIVATE SECTION.
|
||||
DATA mo_cut TYPE REF TO {{p}}towing_fee.
|
||||
METHODS setup.
|
||||
METHODS minimum_fee_applies FOR TESTING.
|
||||
METHODS distance_charge FOR TESTING.
|
||||
METHODS first_ten_km_free FOR TESTING.
|
||||
METHODS night_surcharge FOR TESTING.
|
||||
METHODS weekend_surcharge FOR TESTING.
|
||||
METHODS night_and_weekend FOR TESTING.
|
||||
METHODS night_hour_boundaries FOR TESTING.
|
||||
METHODS rounds_up_to_five FOR TESTING.
|
||||
METHODS large_vehicle_long_trip FOR TESTING.
|
||||
METHODS rejects_unknown_class FOR TESTING.
|
||||
METHODS rejects_bad_distance FOR TESTING.
|
||||
METHODS rejects_bad_hour FOR TESTING.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}t02_hidden IMPLEMENTATION.
|
||||
METHOD setup.
|
||||
mo_cut = NEW {{p}}towing_fee( ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD minimum_fee_applies.
|
||||
DATA(ls_result) = mo_cut->calculate( iv_vehicle_class = 'S'
|
||||
iv_distance_km = 5
|
||||
iv_hour = 12
|
||||
iv_is_weekend = abap_false ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = {{p}}towing_fee=>c_status-ok
|
||||
act = ls_result-status ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 80
|
||||
act = ls_result-fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD distance_charge.
|
||||
DATA(ls_result) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 30
|
||||
iv_hour = 12
|
||||
iv_is_weekend = abap_false ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 130
|
||||
act = ls_result-fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD first_ten_km_free.
|
||||
DATA(ls_ten) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 10
|
||||
iv_hour = 12
|
||||
iv_is_weekend = abap_false ).
|
||||
DATA(ls_twenty) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 20
|
||||
iv_hour = 12
|
||||
iv_is_weekend = abap_false ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 90
|
||||
act = ls_ten-fee ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 110
|
||||
act = ls_twenty-fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD night_surcharge.
|
||||
DATA(ls_result) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 30
|
||||
iv_hour = 23
|
||||
iv_is_weekend = abap_false ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 165
|
||||
act = ls_result-fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD weekend_surcharge.
|
||||
DATA(ls_result) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 30
|
||||
iv_hour = 12
|
||||
iv_is_weekend = abap_true ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 150
|
||||
act = ls_result-fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD night_and_weekend.
|
||||
DATA(ls_result) = mo_cut->calculate( iv_vehicle_class = 'S'
|
||||
iv_distance_km = 10
|
||||
iv_hour = 23
|
||||
iv_is_weekend = abap_true ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 85
|
||||
act = ls_result-fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD night_hour_boundaries.
|
||||
DATA(ls_22) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 10
|
||||
iv_hour = 22
|
||||
iv_is_weekend = abap_false ).
|
||||
DATA(ls_21) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 10
|
||||
iv_hour = 21
|
||||
iv_is_weekend = abap_false ).
|
||||
DATA(ls_5) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 10
|
||||
iv_hour = 5
|
||||
iv_is_weekend = abap_false ).
|
||||
DATA(ls_6) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 10
|
||||
iv_hour = 6
|
||||
iv_is_weekend = abap_false ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 115 act = ls_22-fee msg = `hour 22` ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 90 act = ls_21-fee msg = `hour 21` ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 115 act = ls_5-fee msg = `hour 5` ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 90 act = ls_6-fee msg = `hour 6` ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD rounds_up_to_five.
|
||||
DATA(ls_result) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 11
|
||||
iv_hour = 12
|
||||
iv_is_weekend = abap_false ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 95
|
||||
act = ls_result-fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD large_vehicle_long_trip.
|
||||
DATA(ls_result) = mo_cut->calculate( iv_vehicle_class = 'L'
|
||||
iv_distance_km = 100
|
||||
iv_hour = 12
|
||||
iv_is_weekend = abap_false ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 320
|
||||
act = ls_result-fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD rejects_unknown_class.
|
||||
DATA(ls_result) = mo_cut->calculate( iv_vehicle_class = 'X'
|
||||
iv_distance_km = 30
|
||||
iv_hour = 12
|
||||
iv_is_weekend = abap_false ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = {{p}}towing_fee=>c_status-bad_class
|
||||
act = ls_result-status ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 0
|
||||
act = ls_result-fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD rejects_bad_distance.
|
||||
DATA(ls_zero) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 0
|
||||
iv_hour = 12
|
||||
iv_is_weekend = abap_false ).
|
||||
DATA(ls_far) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 501
|
||||
iv_hour = 12
|
||||
iv_is_weekend = abap_false ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = {{p}}towing_fee=>c_status-bad_distance
|
||||
act = ls_zero-status ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = {{p}}towing_fee=>c_status-bad_distance
|
||||
act = ls_far-status ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD rejects_bad_hour.
|
||||
DATA(ls_24) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 10
|
||||
iv_hour = 24
|
||||
iv_is_weekend = abap_false ).
|
||||
DATA(ls_neg) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 10
|
||||
iv_hour = -1
|
||||
iv_is_weekend = abap_false ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = {{p}}towing_fee=>c_status-bad_hour
|
||||
act = ls_24-status ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = {{p}}towing_fee=>c_status-bad_hour
|
||||
act = ls_neg-status ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
133
tasks_gen/train/G1317/reference/towing_fee.clas.abap
Normal file
133
tasks_gen/train/G1317/reference/towing_fee.clas.abap
Normal file
@@ -0,0 +1,133 @@
|
||||
CLASS {{p}}towing_fee DEFINITION PUBLIC FINAL CREATE PUBLIC.
|
||||
PUBLIC SECTION.
|
||||
TYPES ty_status TYPE c LENGTH 8.
|
||||
TYPES ty_amount TYPE i.
|
||||
TYPES ty_class TYPE c LENGTH 1.
|
||||
TYPES:
|
||||
BEGIN OF ty_result,
|
||||
status TYPE ty_status,
|
||||
fee TYPE ty_amount,
|
||||
END OF ty_result.
|
||||
|
||||
CONSTANTS:
|
||||
BEGIN OF c_status,
|
||||
ok TYPE ty_status VALUE 'OK',
|
||||
bad_class TYPE ty_status VALUE 'CLASS',
|
||||
bad_distance TYPE ty_status VALUE 'DISTANCE',
|
||||
bad_hour TYPE ty_status VALUE 'HOUR',
|
||||
END OF c_status.
|
||||
|
||||
METHODS calculate
|
||||
IMPORTING iv_vehicle_class TYPE ty_class
|
||||
iv_distance_km TYPE i
|
||||
iv_hour TYPE i
|
||||
iv_is_weekend TYPE abap_bool
|
||||
RETURNING VALUE(rs_result) TYPE ty_result.
|
||||
|
||||
PRIVATE SECTION.
|
||||
CONSTANTS:
|
||||
c_base_small TYPE ty_amount VALUE 60,
|
||||
c_base_medium TYPE ty_amount VALUE 90,
|
||||
c_base_large TYPE ty_amount VALUE 140,
|
||||
c_free_km TYPE i VALUE 10,
|
||||
c_km_rate TYPE ty_amount VALUE 2,
|
||||
c_night_percent TYPE i VALUE 25,
|
||||
c_weekend_percent TYPE i VALUE 15,
|
||||
c_minimum_fee TYPE ty_amount VALUE 80,
|
||||
c_round_step TYPE ty_amount VALUE 5,
|
||||
c_max_distance TYPE i VALUE 500.
|
||||
|
||||
METHODS validate
|
||||
IMPORTING iv_vehicle_class TYPE ty_class
|
||||
iv_distance_km TYPE i
|
||||
iv_hour TYPE i
|
||||
RETURNING VALUE(rv_status) TYPE ty_status.
|
||||
METHODS base_fee
|
||||
IMPORTING iv_vehicle_class TYPE ty_class
|
||||
RETURNING VALUE(rv_fee) TYPE ty_amount.
|
||||
METHODS distance_fee
|
||||
IMPORTING iv_distance_km TYPE i
|
||||
RETURNING VALUE(rv_fee) TYPE ty_amount.
|
||||
METHODS is_night
|
||||
IMPORTING iv_hour TYPE i
|
||||
RETURNING VALUE(rv_night) TYPE abap_bool.
|
||||
METHODS surcharge
|
||||
IMPORTING iv_subtotal TYPE ty_amount
|
||||
iv_percent TYPE i
|
||||
RETURNING VALUE(rv_surcharge) TYPE ty_amount.
|
||||
METHODS round_up
|
||||
IMPORTING iv_amount TYPE ty_amount
|
||||
RETURNING VALUE(rv_amount) TYPE ty_amount.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}towing_fee IMPLEMENTATION.
|
||||
METHOD calculate.
|
||||
DATA(lv_status) = validate( iv_vehicle_class = iv_vehicle_class
|
||||
iv_distance_km = iv_distance_km
|
||||
iv_hour = iv_hour ).
|
||||
IF lv_status <> c_status-ok.
|
||||
rs_result = VALUE #( status = lv_status fee = 0 ).
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
DATA(lv_subtotal) = base_fee( iv_vehicle_class ) + distance_fee( iv_distance_km ).
|
||||
DATA(lv_total) = lv_subtotal.
|
||||
IF is_night( iv_hour ) = abap_true.
|
||||
lv_total = lv_total + surcharge( iv_subtotal = lv_subtotal
|
||||
iv_percent = c_night_percent ).
|
||||
ENDIF.
|
||||
IF iv_is_weekend = abap_true.
|
||||
lv_total = lv_total + surcharge( iv_subtotal = lv_subtotal
|
||||
iv_percent = c_weekend_percent ).
|
||||
ENDIF.
|
||||
IF lv_total < c_minimum_fee.
|
||||
lv_total = c_minimum_fee.
|
||||
ENDIF.
|
||||
rs_result = VALUE #( status = c_status-ok
|
||||
fee = round_up( lv_total ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD validate.
|
||||
IF iv_vehicle_class <> 'S' AND iv_vehicle_class <> 'M' AND iv_vehicle_class <> 'L'.
|
||||
rv_status = c_status-bad_class.
|
||||
ELSEIF iv_distance_km < 1 OR iv_distance_km > c_max_distance.
|
||||
rv_status = c_status-bad_distance.
|
||||
ELSEIF iv_hour < 0 OR iv_hour > 23.
|
||||
rv_status = c_status-bad_hour.
|
||||
ELSE.
|
||||
rv_status = c_status-ok.
|
||||
ENDIF.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD base_fee.
|
||||
CASE iv_vehicle_class.
|
||||
WHEN 'S'.
|
||||
rv_fee = c_base_small.
|
||||
WHEN 'M'.
|
||||
rv_fee = c_base_medium.
|
||||
WHEN 'L'.
|
||||
rv_fee = c_base_large.
|
||||
ENDCASE.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD distance_fee.
|
||||
DATA(lv_chargeable_km) = iv_distance_km - c_free_km.
|
||||
IF lv_chargeable_km < 0.
|
||||
lv_chargeable_km = 0.
|
||||
ENDIF.
|
||||
rv_fee = lv_chargeable_km * c_km_rate.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD is_night.
|
||||
rv_night = xsdbool( iv_hour >= 22 OR iv_hour <= 5 ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD surcharge.
|
||||
rv_surcharge = iv_subtotal * iv_percent DIV 100.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD round_up.
|
||||
rv_amount = ( ( iv_amount + c_round_step - 1 ) DIV c_round_step ) * c_round_step.
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
74
tasks_gen/train/G1317/reference/towing_fee.testclasses.abap
Normal file
74
tasks_gen/train/G1317/reference/towing_fee.testclasses.abap
Normal file
@@ -0,0 +1,74 @@
|
||||
CLASS ltc_towing_fee DEFINITION FINAL FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
|
||||
PRIVATE SECTION.
|
||||
DATA mo_cut TYPE REF TO {{p}}towing_fee.
|
||||
METHODS setup.
|
||||
METHODS minimum_fee FOR TESTING.
|
||||
METHODS distance_charge FOR TESTING.
|
||||
METHODS night_surcharge FOR TESTING.
|
||||
METHODS weekend_surcharge FOR TESTING.
|
||||
METHODS invalid_class FOR TESTING.
|
||||
METHODS invalid_distance FOR TESTING.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS ltc_towing_fee IMPLEMENTATION.
|
||||
METHOD setup.
|
||||
mo_cut = NEW {{p}}towing_fee( ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD minimum_fee.
|
||||
DATA(ls_result) = mo_cut->calculate( iv_vehicle_class = 'S'
|
||||
iv_distance_km = 3
|
||||
iv_hour = 12
|
||||
iv_is_weekend = abap_false ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = {{p}}towing_fee=>c_status-ok
|
||||
act = ls_result-status ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 80
|
||||
act = ls_result-fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD distance_charge.
|
||||
DATA(ls_result) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 30
|
||||
iv_hour = 12
|
||||
iv_is_weekend = abap_false ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 130
|
||||
act = ls_result-fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD night_surcharge.
|
||||
DATA(ls_result) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 30
|
||||
iv_hour = 23
|
||||
iv_is_weekend = abap_false ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 165
|
||||
act = ls_result-fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD weekend_surcharge.
|
||||
DATA(ls_result) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 30
|
||||
iv_hour = 12
|
||||
iv_is_weekend = abap_true ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 150
|
||||
act = ls_result-fee ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD invalid_class.
|
||||
DATA(ls_result) = mo_cut->calculate( iv_vehicle_class = 'X'
|
||||
iv_distance_km = 30
|
||||
iv_hour = 12
|
||||
iv_is_weekend = abap_false ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = {{p}}towing_fee=>c_status-bad_class
|
||||
act = ls_result-status ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD invalid_distance.
|
||||
DATA(ls_result) = mo_cut->calculate( iv_vehicle_class = 'M'
|
||||
iv_distance_km = 0
|
||||
iv_hour = 12
|
||||
iv_is_weekend = abap_false ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = {{p}}towing_fee=>c_status-bad_distance
|
||||
act = ls_result-status ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
18
tasks_gen/train/G1317/spec.md
Normal file
18
tasks_gen/train/G1317/spec.md
Normal file
@@ -0,0 +1,18 @@
|
||||
Create the public final class {{P}}TOWING_FEE in package $TMP. The class has a public constructor without parameters. Define these public types: TY_STATUS (character field, length 8), TY_AMOUNT (integer), TY_CLASS (character field, length 1), and TY_RESULT (structure with components STATUS type TY_STATUS and FEE type TY_AMOUNT). Define the public constant structure C_STATUS with components OK, BAD_CLASS, BAD_DISTANCE, and BAD_HOUR. The values are 'OK', 'CLASS', 'DISTANCE', and 'HOUR'. The class has exactly one public method: CALCULATE, importing iv_vehicle_class TYPE ty_class, iv_distance_km TYPE i, iv_hour TYPE i, iv_is_weekend TYPE abap_bool, returning VALUE(rs_result) TYPE ty_result. Do not add other public methods.
|
||||
|
||||
The method CALCULATE applies these rules in this sequence:
|
||||
1. Check the input. Return the status of the first check that fails. If a check fails, the fee is 0.
|
||||
1.1 The vehicle class must be 'S', 'M', or 'L'. Else return BAD_CLASS.
|
||||
1.2 The distance must be from 1 to 500 kilometres. Else return BAD_DISTANCE.
|
||||
1.3 The hour must be from 0 to 23. Else return BAD_HOUR.
|
||||
2. The base fee comes from the vehicle class: S = 60 EUR, M = 90 EUR, L = 140 EUR.
|
||||
3. The distance charge: the first 10 kilometres are free. Each kilometre above 10 costs 2 EUR.
|
||||
4. Add the base fee and the distance charge. The result is the subtotal.
|
||||
5. The night is hour 22, hour 23, and hours 0 to 5. If the call is at night, calculate 25 percent of the subtotal. Round the night surcharge down to a full euro.
|
||||
6. If the call is on a weekend, calculate 15 percent of the subtotal. Round the weekend surcharge down to a full euro. The night surcharge and the weekend surcharge can apply together. Calculate both surcharges from the subtotal.
|
||||
7. Add the subtotal and all surcharges. The result is the total.
|
||||
8. If the total is below 80 EUR, the total is 80 EUR.
|
||||
9. Round the total up to a full 5 EUR. If the total is already a full 5 EUR, the total does not change.
|
||||
10. Return the status OK and the fee.
|
||||
|
||||
Do not create other objects. Write ABAP Unit tests for the class.
|
||||
43
tasks_gen/train/G1317/task.json
Normal file
43
tasks_gen/train/G1317/task.json
Normal file
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"id": "G1317",
|
||||
"category": "K",
|
||||
"object_type": "CLAS",
|
||||
"difficulty": 2,
|
||||
"release_target": "v816",
|
||||
"expected_outcome": "implement",
|
||||
"budget": {
|
||||
"max_tool_calls": 60,
|
||||
"max_activations": 15
|
||||
},
|
||||
"seed": [],
|
||||
"contract": [
|
||||
{
|
||||
"type": "CLAS",
|
||||
"name": "{{P}}TOWING_FEE"
|
||||
}
|
||||
],
|
||||
"out_of_scope": [],
|
||||
"hidden_tests": [
|
||||
{
|
||||
"type": "CLAS",
|
||||
"name": "{{P}}T02_HIDDEN",
|
||||
"file": "hidden/t02_hidden.clas.abap",
|
||||
"description": "T02 hidden tests for the towing fee calculator"
|
||||
}
|
||||
],
|
||||
"reference": [
|
||||
{
|
||||
"type": "CLAS",
|
||||
"name": "{{P}}TOWING_FEE",
|
||||
"file": "reference/towing_fee.clas.abap",
|
||||
"description": "Towing call-out fee calculator",
|
||||
"testclasses_file": "reference/towing_fee.testclasses.abap"
|
||||
}
|
||||
],
|
||||
"craft_checks": [
|
||||
"method_length",
|
||||
"no_global_variables"
|
||||
],
|
||||
"base_task": "G1015",
|
||||
"input_style": "incomplete"
|
||||
}
|
||||
Reference in New Issue
Block a user