Stage 2 summary at 50 accepted trajectories
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
145
tasks_gen/train/G1135/faulty/m0_pool_ticket.clas.abap
Normal file
145
tasks_gen/train/G1135/faulty/m0_pool_ticket.clas.abap
Normal file
@@ -0,0 +1,145 @@
|
||||
CLASS {{p}}pool_ticket DEFINITION PUBLIC FINAL CREATE PUBLIC.
|
||||
PUBLIC SECTION.
|
||||
TYPES ty_zone TYPE c LENGTH 2.
|
||||
TYPES ty_rate TYPE c LENGTH 1.
|
||||
TYPES ty_day TYPE c LENGTH 2.
|
||||
TYPES ty_flag TYPE c LENGTH 1.
|
||||
TYPES ty_status TYPE c LENGTH 2.
|
||||
TYPES ty_amount TYPE p LENGTH 8 DECIMALS 2.
|
||||
|
||||
CONSTANTS:
|
||||
BEGIN OF c_status,
|
||||
ok TYPE ty_status VALUE 'OK',
|
||||
zone TYPE ty_status VALUE 'ZN',
|
||||
rate TYPE ty_status VALUE 'RT',
|
||||
day TYPE ty_status VALUE 'DY',
|
||||
END OF c_status.
|
||||
|
||||
CONSTANTS:
|
||||
BEGIN OF c_flag,
|
||||
member TYPE ty_flag VALUE 'X',
|
||||
guest TYPE ty_flag VALUE ' ',
|
||||
END OF c_flag.
|
||||
|
||||
METHODS check_booking
|
||||
IMPORTING iv_zone TYPE ty_zone
|
||||
iv_rate TYPE ty_rate
|
||||
iv_day TYPE ty_day
|
||||
RETURNING VALUE(rv_status) TYPE ty_status.
|
||||
|
||||
METHODS ticket_price
|
||||
IMPORTING iv_zone TYPE ty_zone
|
||||
iv_rate TYPE ty_rate
|
||||
iv_day TYPE ty_day
|
||||
iv_member TYPE ty_flag
|
||||
RETURNING VALUE(rv_price) TYPE ty_amount.
|
||||
|
||||
PRIVATE SECTION.
|
||||
TYPES:
|
||||
BEGIN OF ty_base_price,
|
||||
zone TYPE ty_zone,
|
||||
rate TYPE ty_rate,
|
||||
base TYPE ty_amount,
|
||||
END OF ty_base_price,
|
||||
tt_base_price TYPE HASHED TABLE OF ty_base_price WITH UNIQUE KEY zone rate.
|
||||
|
||||
CONSTANTS c_weekend_surcharge TYPE ty_amount VALUE '2.50'.
|
||||
CONSTANTS c_member_share TYPE i VALUE 80.
|
||||
|
||||
METHODS base_prices
|
||||
RETURNING VALUE(rt_price) TYPE tt_base_price.
|
||||
|
||||
METHODS weekend_surcharge
|
||||
IMPORTING iv_day TYPE ty_day
|
||||
RETURNING VALUE(rv_surcharge) TYPE ty_amount.
|
||||
|
||||
METHODS is_known_zone
|
||||
IMPORTING iv_zone TYPE ty_zone
|
||||
RETURNING VALUE(rv_known) TYPE abap_bool.
|
||||
|
||||
METHODS is_known_rate
|
||||
IMPORTING iv_rate TYPE ty_rate
|
||||
RETURNING VALUE(rv_known) TYPE abap_bool.
|
||||
|
||||
METHODS is_known_day
|
||||
IMPORTING iv_day TYPE ty_day
|
||||
RETURNING VALUE(rv_known) TYPE abap_bool.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}pool_ticket IMPLEMENTATION.
|
||||
METHOD check_booking.
|
||||
IF is_known_zone( iv_zone ) = abap_false.
|
||||
rv_status = c_status-zone.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
IF is_known_rate( iv_rate ) = abap_false.
|
||||
rv_status = c_status-rate.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
IF is_known_day( iv_day ) = abap_true.
|
||||
rv_status = c_status-day.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
rv_status = c_status-ok.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD ticket_price.
|
||||
IF check_booking( iv_zone = iv_zone
|
||||
iv_rate = iv_rate
|
||||
iv_day = iv_day ) <> c_status-ok.
|
||||
rv_price = 0.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
DATA(lt_price) = base_prices( ).
|
||||
READ TABLE lt_price INTO DATA(ls_price)
|
||||
WITH TABLE KEY zone = iv_zone rate = iv_rate.
|
||||
IF sy-subrc <> 0.
|
||||
rv_price = 0.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
rv_price = ls_price-base + weekend_surcharge( iv_day ).
|
||||
IF iv_member = c_flag-member.
|
||||
rv_price = rv_price * c_member_share / 100.
|
||||
ENDIF.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD base_prices.
|
||||
rt_price = VALUE #(
|
||||
( zone = 'IN' rate = 'A' base = '10.00' )
|
||||
( zone = 'IN' rate = 'C' base = '5.00' )
|
||||
( zone = 'IN' rate = 'S' base = '7.50' )
|
||||
( zone = 'OU' rate = 'A' base = '7.50' )
|
||||
( zone = 'OU' rate = 'C' base = '3.75' )
|
||||
( zone = 'OU' rate = 'S' base = '5.00' )
|
||||
( zone = 'SA' rate = 'A' base = '15.00' )
|
||||
( zone = 'SA' rate = 'C' base = '7.50' )
|
||||
( zone = 'SA' rate = 'S' base = '11.25' )
|
||||
( zone = 'AL' rate = 'A' base = '20.00' )
|
||||
( zone = 'AL' rate = 'C' base = '10.00' )
|
||||
( zone = 'AL' rate = 'S' base = '15.00' ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD weekend_surcharge.
|
||||
IF iv_day = 'SA' OR iv_day = 'SU'.
|
||||
rv_surcharge = c_weekend_surcharge.
|
||||
ENDIF.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD is_known_zone.
|
||||
rv_known = xsdbool( iv_zone = 'IN' OR iv_zone = 'OU'
|
||||
OR iv_zone = 'SA' OR iv_zone = 'AL' ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD is_known_rate.
|
||||
rv_known = xsdbool( iv_rate = 'A' OR iv_rate = 'C' OR iv_rate = 'S' ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD is_known_day.
|
||||
rv_known = xsdbool( iv_day = 'MO' OR iv_day = 'TU' OR iv_day = 'WE'
|
||||
OR iv_day = 'TH' OR iv_day = 'FR' OR iv_day = 'SA'
|
||||
OR iv_day = 'SU' ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
145
tasks_gen/train/G1135/faulty/m2_pool_ticket.clas.abap
Normal file
145
tasks_gen/train/G1135/faulty/m2_pool_ticket.clas.abap
Normal file
@@ -0,0 +1,145 @@
|
||||
CLASS {{p}}pool_ticket DEFINITION PUBLIC FINAL CREATE PUBLIC.
|
||||
PUBLIC SECTION.
|
||||
TYPES ty_zone TYPE c LENGTH 2.
|
||||
TYPES ty_rate TYPE c LENGTH 1.
|
||||
TYPES ty_day TYPE c LENGTH 2.
|
||||
TYPES ty_flag TYPE c LENGTH 1.
|
||||
TYPES ty_status TYPE c LENGTH 2.
|
||||
TYPES ty_amount TYPE p LENGTH 8 DECIMALS 2.
|
||||
|
||||
CONSTANTS:
|
||||
BEGIN OF c_status,
|
||||
ok TYPE ty_status VALUE 'OK',
|
||||
zone TYPE ty_status VALUE 'ZN',
|
||||
rate TYPE ty_status VALUE 'RT',
|
||||
day TYPE ty_status VALUE 'DY',
|
||||
END OF c_status.
|
||||
|
||||
CONSTANTS:
|
||||
BEGIN OF c_flag,
|
||||
member TYPE ty_flag VALUE 'X',
|
||||
guest TYPE ty_flag VALUE ' ',
|
||||
END OF c_flag.
|
||||
|
||||
METHODS check_booking
|
||||
IMPORTING iv_zone TYPE ty_zone
|
||||
iv_rate TYPE ty_rate
|
||||
iv_day TYPE ty_day
|
||||
RETURNING VALUE(rv_status) TYPE ty_status.
|
||||
|
||||
METHODS ticket_price
|
||||
IMPORTING iv_zone TYPE ty_zone
|
||||
iv_rate TYPE ty_rate
|
||||
iv_day TYPE ty_day
|
||||
iv_member TYPE ty_flag
|
||||
RETURNING VALUE(rv_price) TYPE ty_amount.
|
||||
|
||||
PRIVATE SECTION.
|
||||
TYPES:
|
||||
BEGIN OF ty_base_price,
|
||||
zone TYPE ty_zone,
|
||||
rate TYPE ty_rate,
|
||||
base TYPE ty_amount,
|
||||
END OF ty_base_price,
|
||||
tt_base_price TYPE HASHED TABLE OF ty_base_price WITH UNIQUE KEY zone rate.
|
||||
|
||||
CONSTANTS c_weekend_surcharge TYPE ty_amount VALUE '2.50'.
|
||||
CONSTANTS c_member_share TYPE i VALUE 80.
|
||||
|
||||
METHODS base_prices
|
||||
RETURNING VALUE(rt_price) TYPE tt_base_price.
|
||||
|
||||
METHODS weekend_surcharge
|
||||
IMPORTING iv_day TYPE ty_day
|
||||
RETURNING VALUE(rv_surcharge) TYPE ty_amount.
|
||||
|
||||
METHODS is_known_zone
|
||||
IMPORTING iv_zone TYPE ty_zone
|
||||
RETURNING VALUE(rv_known) TYPE abap_bool.
|
||||
|
||||
METHODS is_known_rate
|
||||
IMPORTING iv_rate TYPE ty_rate
|
||||
RETURNING VALUE(rv_known) TYPE abap_bool.
|
||||
|
||||
METHODS is_known_day
|
||||
IMPORTING iv_day TYPE ty_day
|
||||
RETURNING VALUE(rv_known) TYPE abap_bool.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}pool_ticket IMPLEMENTATION.
|
||||
METHOD check_booking.
|
||||
IF is_known_zone( iv_zone ) = abap_false.
|
||||
rv_status = c_status-zone.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
IF is_known_rate( iv_rate ) = abap_false.
|
||||
rv_status = c_status-rate.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
IF is_known_day( iv_day ) = abap_false.
|
||||
rv_status = c_status-day.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
rv_status = c_status-ok.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD ticket_price.
|
||||
IF check_booking( iv_zone = iv_zone
|
||||
iv_rate = iv_rate
|
||||
iv_day = iv_day ) = c_status-ok.
|
||||
rv_price = 0.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
DATA(lt_price) = base_prices( ).
|
||||
READ TABLE lt_price INTO DATA(ls_price)
|
||||
WITH TABLE KEY zone = iv_zone rate = iv_rate.
|
||||
IF sy-subrc <> 0.
|
||||
rv_price = 0.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
rv_price = ls_price-base + weekend_surcharge( iv_day ).
|
||||
IF iv_member = c_flag-member.
|
||||
rv_price = rv_price * c_member_share / 100.
|
||||
ENDIF.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD base_prices.
|
||||
rt_price = VALUE #(
|
||||
( zone = 'IN' rate = 'A' base = '10.00' )
|
||||
( zone = 'IN' rate = 'C' base = '5.00' )
|
||||
( zone = 'IN' rate = 'S' base = '7.50' )
|
||||
( zone = 'OU' rate = 'A' base = '7.50' )
|
||||
( zone = 'OU' rate = 'C' base = '3.75' )
|
||||
( zone = 'OU' rate = 'S' base = '5.00' )
|
||||
( zone = 'SA' rate = 'A' base = '15.00' )
|
||||
( zone = 'SA' rate = 'C' base = '7.50' )
|
||||
( zone = 'SA' rate = 'S' base = '11.25' )
|
||||
( zone = 'AL' rate = 'A' base = '20.00' )
|
||||
( zone = 'AL' rate = 'C' base = '10.00' )
|
||||
( zone = 'AL' rate = 'S' base = '15.00' ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD weekend_surcharge.
|
||||
IF iv_day = 'SA' OR iv_day = 'SU'.
|
||||
rv_surcharge = c_weekend_surcharge.
|
||||
ENDIF.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD is_known_zone.
|
||||
rv_known = xsdbool( iv_zone = 'IN' OR iv_zone = 'OU'
|
||||
OR iv_zone = 'SA' OR iv_zone = 'AL' ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD is_known_rate.
|
||||
rv_known = xsdbool( iv_rate = 'A' OR iv_rate = 'C' OR iv_rate = 'S' ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD is_known_day.
|
||||
rv_known = xsdbool( iv_day = 'MO' OR iv_day = 'TU' OR iv_day = 'WE'
|
||||
OR iv_day = 'TH' OR iv_day = 'FR' OR iv_day = 'SA'
|
||||
OR iv_day = 'SU' ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
145
tasks_gen/train/G1135/faulty/m3_pool_ticket.clas.abap
Normal file
145
tasks_gen/train/G1135/faulty/m3_pool_ticket.clas.abap
Normal file
@@ -0,0 +1,145 @@
|
||||
CLASS {{p}}pool_ticket DEFINITION PUBLIC FINAL CREATE PUBLIC.
|
||||
PUBLIC SECTION.
|
||||
TYPES ty_zone TYPE c LENGTH 2.
|
||||
TYPES ty_rate TYPE c LENGTH 1.
|
||||
TYPES ty_day TYPE c LENGTH 2.
|
||||
TYPES ty_flag TYPE c LENGTH 1.
|
||||
TYPES ty_status TYPE c LENGTH 2.
|
||||
TYPES ty_amount TYPE p LENGTH 8 DECIMALS 2.
|
||||
|
||||
CONSTANTS:
|
||||
BEGIN OF c_status,
|
||||
ok TYPE ty_status VALUE 'OK',
|
||||
zone TYPE ty_status VALUE 'ZN',
|
||||
rate TYPE ty_status VALUE 'RT',
|
||||
day TYPE ty_status VALUE 'DY',
|
||||
END OF c_status.
|
||||
|
||||
CONSTANTS:
|
||||
BEGIN OF c_flag,
|
||||
member TYPE ty_flag VALUE 'X',
|
||||
guest TYPE ty_flag VALUE ' ',
|
||||
END OF c_flag.
|
||||
|
||||
METHODS check_booking
|
||||
IMPORTING iv_zone TYPE ty_zone
|
||||
iv_rate TYPE ty_rate
|
||||
iv_day TYPE ty_day
|
||||
RETURNING VALUE(rv_status) TYPE ty_status.
|
||||
|
||||
METHODS ticket_price
|
||||
IMPORTING iv_zone TYPE ty_zone
|
||||
iv_rate TYPE ty_rate
|
||||
iv_day TYPE ty_day
|
||||
iv_member TYPE ty_flag
|
||||
RETURNING VALUE(rv_price) TYPE ty_amount.
|
||||
|
||||
PRIVATE SECTION.
|
||||
TYPES:
|
||||
BEGIN OF ty_base_price,
|
||||
zone TYPE ty_zone,
|
||||
rate TYPE ty_rate,
|
||||
base TYPE ty_amount,
|
||||
END OF ty_base_price,
|
||||
tt_base_price TYPE HASHED TABLE OF ty_base_price WITH UNIQUE KEY zone rate.
|
||||
|
||||
CONSTANTS c_weekend_surcharge TYPE ty_amount VALUE '2.50'.
|
||||
CONSTANTS c_member_share TYPE i VALUE 80.
|
||||
|
||||
METHODS base_prices
|
||||
RETURNING VALUE(rt_price) TYPE tt_base_price.
|
||||
|
||||
METHODS weekend_surcharge
|
||||
IMPORTING iv_day TYPE ty_day
|
||||
RETURNING VALUE(rv_surcharge) TYPE ty_amount.
|
||||
|
||||
METHODS is_known_zone
|
||||
IMPORTING iv_zone TYPE ty_zone
|
||||
RETURNING VALUE(rv_known) TYPE abap_bool.
|
||||
|
||||
METHODS is_known_rate
|
||||
IMPORTING iv_rate TYPE ty_rate
|
||||
RETURNING VALUE(rv_known) TYPE abap_bool.
|
||||
|
||||
METHODS is_known_day
|
||||
IMPORTING iv_day TYPE ty_day
|
||||
RETURNING VALUE(rv_known) TYPE abap_bool.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}pool_ticket IMPLEMENTATION.
|
||||
METHOD check_booking.
|
||||
IF is_known_zone( iv_zone ) = abap_false.
|
||||
rv_status = c_status-zone.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
IF is_known_rate( iv_rate ) = abap_false.
|
||||
rv_status = c_status-rate.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
IF is_known_day( iv_day ) = abap_false.
|
||||
rv_status = c_status-day.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
rv_status = c_status-ok.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD ticket_price.
|
||||
IF check_booking( iv_zone = iv_zone
|
||||
iv_rate = iv_rate
|
||||
iv_day = iv_day ) <> c_status-ok.
|
||||
rv_price = 0.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
DATA(lt_price) = base_prices( ).
|
||||
READ TABLE lt_price INTO DATA(ls_price)
|
||||
WITH TABLE KEY zone = iv_zone rate = iv_rate.
|
||||
IF sy-subrc <> 0.
|
||||
rv_price = 0.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
rv_price = ls_price-base - weekend_surcharge( iv_day ).
|
||||
IF iv_member = c_flag-member.
|
||||
rv_price = rv_price * c_member_share / 100.
|
||||
ENDIF.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD base_prices.
|
||||
rt_price = VALUE #(
|
||||
( zone = 'IN' rate = 'A' base = '10.00' )
|
||||
( zone = 'IN' rate = 'C' base = '5.00' )
|
||||
( zone = 'IN' rate = 'S' base = '7.50' )
|
||||
( zone = 'OU' rate = 'A' base = '7.50' )
|
||||
( zone = 'OU' rate = 'C' base = '3.75' )
|
||||
( zone = 'OU' rate = 'S' base = '5.00' )
|
||||
( zone = 'SA' rate = 'A' base = '15.00' )
|
||||
( zone = 'SA' rate = 'C' base = '7.50' )
|
||||
( zone = 'SA' rate = 'S' base = '11.25' )
|
||||
( zone = 'AL' rate = 'A' base = '20.00' )
|
||||
( zone = 'AL' rate = 'C' base = '10.00' )
|
||||
( zone = 'AL' rate = 'S' base = '15.00' ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD weekend_surcharge.
|
||||
IF iv_day = 'SA' OR iv_day = 'SU'.
|
||||
rv_surcharge = c_weekend_surcharge.
|
||||
ENDIF.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD is_known_zone.
|
||||
rv_known = xsdbool( iv_zone = 'IN' OR iv_zone = 'OU'
|
||||
OR iv_zone = 'SA' OR iv_zone = 'AL' ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD is_known_rate.
|
||||
rv_known = xsdbool( iv_rate = 'A' OR iv_rate = 'C' OR iv_rate = 'S' ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD is_known_day.
|
||||
rv_known = xsdbool( iv_day = 'MO' OR iv_day = 'TU' OR iv_day = 'WE'
|
||||
OR iv_day = 'TH' OR iv_day = 'FR' OR iv_day = 'SA'
|
||||
OR iv_day = 'SU' ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
19
tasks_gen/train/G1135/generation.json
Normal file
19
tasks_gen/train/G1135/generation.json
Normal file
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"id": "G1135",
|
||||
"pool": "train",
|
||||
"object_type": "CLAS",
|
||||
"category": "A",
|
||||
"attempts": [
|
||||
{
|
||||
"stage": "validate",
|
||||
"oracle": 100.0,
|
||||
"null": 0,
|
||||
"mutation": {
|
||||
"valid": 4,
|
||||
"killed": 3,
|
||||
"ok": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"accepted": true
|
||||
}
|
||||
113
tasks_gen/train/G1135/hidden/t31_hidden.clas.abap
Normal file
113
tasks_gen/train/G1135/hidden/t31_hidden.clas.abap
Normal file
@@ -0,0 +1,113 @@
|
||||
CLASS {{p}}t31_hidden DEFINITION PUBLIC FINAL CREATE PUBLIC
|
||||
FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
|
||||
|
||||
PRIVATE SECTION.
|
||||
DATA mo_cut TYPE REF TO {{p}}pool_ticket.
|
||||
DATA mv_member TYPE {{p}}pool_ticket=>ty_flag.
|
||||
DATA mv_guest TYPE {{p}}pool_ticket=>ty_flag.
|
||||
|
||||
METHODS setup.
|
||||
METHODS valid_booking_is_ok FOR TESTING.
|
||||
METHODS unknown_zone FOR TESTING.
|
||||
METHODS unknown_rate FOR TESTING.
|
||||
METHODS unknown_day FOR TESTING.
|
||||
METHODS zone_checked_first FOR TESTING.
|
||||
METHODS lower_case_zone FOR TESTING.
|
||||
METHODS price_indoor_adult FOR TESTING.
|
||||
METHODS price_outdoor_child_weekend FOR TESTING.
|
||||
METHODS price_sauna_senior_member FOR TESTING.
|
||||
METHODS price_all_areas_weekend_member FOR TESTING.
|
||||
METHODS price_member_weekday_child FOR TESTING.
|
||||
METHODS price_invalid_booking FOR TESTING.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}t31_hidden IMPLEMENTATION.
|
||||
METHOD setup.
|
||||
mo_cut = NEW {{p}}pool_ticket( ).
|
||||
mv_member = {{p}}pool_ticket=>c_flag-member.
|
||||
mv_guest = {{p}}pool_ticket=>c_flag-guest.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD valid_booking_is_ok.
|
||||
DATA lv_status TYPE {{p}}pool_ticket=>ty_status.
|
||||
lv_status = mo_cut->check_booking( iv_zone = 'IN' iv_rate = 'A' iv_day = 'MO' ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = {{p}}pool_ticket=>c_status-ok
|
||||
act = lv_status ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD unknown_zone.
|
||||
DATA(lv_zone) = CONV {{p}}pool_ticket=>ty_zone( 'XX' ).
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = {{p}}pool_ticket=>c_status-zone
|
||||
act = mo_cut->check_booking( iv_zone = lv_zone iv_rate = 'A' iv_day = 'MO' ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD unknown_rate.
|
||||
DATA(lv_rate) = CONV {{p}}pool_ticket=>ty_rate( 'X' ).
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = {{p}}pool_ticket=>c_status-rate
|
||||
act = mo_cut->check_booking( iv_zone = 'IN' iv_rate = lv_rate iv_day = 'XX' ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD unknown_day.
|
||||
DATA(lv_day) = CONV {{p}}pool_ticket=>ty_day( 'XX' ).
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = {{p}}pool_ticket=>c_status-day
|
||||
act = mo_cut->check_booking( iv_zone = 'IN' iv_rate = 'A' iv_day = lv_day ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD zone_checked_first.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = {{p}}pool_ticket=>c_status-zone
|
||||
act = mo_cut->check_booking( iv_zone = 'XX' iv_rate = 'X' iv_day = 'XX' ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD lower_case_zone.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = {{p}}pool_ticket=>c_status-zone
|
||||
act = mo_cut->check_booking( iv_zone = 'in' iv_rate = 'A' iv_day = 'MO' ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD price_indoor_adult.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = CONV {{p}}pool_ticket=>ty_amount( '10.00' )
|
||||
act = mo_cut->ticket_price( iv_zone = 'IN' iv_rate = 'A' iv_day = 'MO'
|
||||
iv_member = mv_guest ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD price_outdoor_child_weekend.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = CONV {{p}}pool_ticket=>ty_amount( '6.25' )
|
||||
act = mo_cut->ticket_price( iv_zone = 'OU' iv_rate = 'C' iv_day = 'SA'
|
||||
iv_member = mv_guest ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD price_sauna_senior_member.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = CONV {{p}}pool_ticket=>ty_amount( '9.00' )
|
||||
act = mo_cut->ticket_price( iv_zone = 'SA' iv_rate = 'S' iv_day = 'MO'
|
||||
iv_member = mv_member ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD price_all_areas_weekend_member.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = CONV {{p}}pool_ticket=>ty_amount( '18.00' )
|
||||
act = mo_cut->ticket_price( iv_zone = 'AL' iv_rate = 'A' iv_day = 'SU'
|
||||
iv_member = mv_member ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD price_member_weekday_child.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = CONV {{p}}pool_ticket=>ty_amount( '4.00' )
|
||||
act = mo_cut->ticket_price( iv_zone = 'IN' iv_rate = 'C' iv_day = 'WE'
|
||||
iv_member = mv_member ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD price_invalid_booking.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = CONV {{p}}pool_ticket=>ty_amount( '0.00' )
|
||||
act = mo_cut->ticket_price( iv_zone = 'XX' iv_rate = 'A' iv_day = 'MO'
|
||||
iv_member = mv_guest ) ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
61
tasks_gen/train/G1135/mutation.json
Normal file
61
tasks_gen/train/G1135/mutation.json
Normal file
@@ -0,0 +1,61 @@
|
||||
{
|
||||
"task": "G1135",
|
||||
"mutants": [
|
||||
{
|
||||
"object": "{{P}}POOL_TICKET",
|
||||
"mutant": "line 80: abap_false -> abap_true (bool)",
|
||||
"status": "killed",
|
||||
"hidden": "5/12",
|
||||
"failed_tests": [
|
||||
"PRICE_ALL_AREAS_WEEKEND_MEMBER",
|
||||
"PRICE_INDOOR_ADULT",
|
||||
"PRICE_MEMBER_WEEKDAY_CHILD",
|
||||
"PRICE_OUTDOOR_CHILD_WEEKEND",
|
||||
"PRICE_SAUNA_SENIOR_MEMBER",
|
||||
"UNKNOWN_DAY",
|
||||
"VALID_BOOKING_IS_OK"
|
||||
]
|
||||
},
|
||||
{
|
||||
"object": "{{P}}POOL_TICKET",
|
||||
"mutant": "line 88: = -> <> (eq)",
|
||||
"status": "invalid",
|
||||
"hidden": "0/0",
|
||||
"failed_tests": []
|
||||
},
|
||||
{
|
||||
"object": "{{P}}POOL_TICKET",
|
||||
"mutant": "line 90: <> -> = (rel)",
|
||||
"status": "killed",
|
||||
"hidden": "7/12",
|
||||
"failed_tests": [
|
||||
"PRICE_ALL_AREAS_WEEKEND_MEMBER",
|
||||
"PRICE_INDOOR_ADULT",
|
||||
"PRICE_MEMBER_WEEKDAY_CHILD",
|
||||
"PRICE_OUTDOOR_CHILD_WEEKEND",
|
||||
"PRICE_SAUNA_SENIOR_MEMBER"
|
||||
]
|
||||
},
|
||||
{
|
||||
"object": "{{P}}POOL_TICKET",
|
||||
"mutant": "line 103: + -> - (arith)",
|
||||
"status": "killed",
|
||||
"hidden": "10/12",
|
||||
"failed_tests": [
|
||||
"PRICE_ALL_AREAS_WEEKEND_MEMBER",
|
||||
"PRICE_OUTDOOR_CHILD_WEEKEND"
|
||||
]
|
||||
},
|
||||
{
|
||||
"object": "{{P}}POOL_TICKET",
|
||||
"mutant": "line 142: OR -> AND (logic)",
|
||||
"status": "survived",
|
||||
"hidden": "12/12",
|
||||
"failed_tests": []
|
||||
}
|
||||
],
|
||||
"valid": 4,
|
||||
"killed": 3,
|
||||
"kill_rate": 0.75,
|
||||
"ok": true
|
||||
}
|
||||
145
tasks_gen/train/G1135/reference/pool_ticket.clas.abap
Normal file
145
tasks_gen/train/G1135/reference/pool_ticket.clas.abap
Normal file
@@ -0,0 +1,145 @@
|
||||
CLASS {{p}}pool_ticket DEFINITION PUBLIC FINAL CREATE PUBLIC.
|
||||
PUBLIC SECTION.
|
||||
TYPES ty_zone TYPE c LENGTH 2.
|
||||
TYPES ty_rate TYPE c LENGTH 1.
|
||||
TYPES ty_day TYPE c LENGTH 2.
|
||||
TYPES ty_flag TYPE c LENGTH 1.
|
||||
TYPES ty_status TYPE c LENGTH 2.
|
||||
TYPES ty_amount TYPE p LENGTH 8 DECIMALS 2.
|
||||
|
||||
CONSTANTS:
|
||||
BEGIN OF c_status,
|
||||
ok TYPE ty_status VALUE 'OK',
|
||||
zone TYPE ty_status VALUE 'ZN',
|
||||
rate TYPE ty_status VALUE 'RT',
|
||||
day TYPE ty_status VALUE 'DY',
|
||||
END OF c_status.
|
||||
|
||||
CONSTANTS:
|
||||
BEGIN OF c_flag,
|
||||
member TYPE ty_flag VALUE 'X',
|
||||
guest TYPE ty_flag VALUE ' ',
|
||||
END OF c_flag.
|
||||
|
||||
METHODS check_booking
|
||||
IMPORTING iv_zone TYPE ty_zone
|
||||
iv_rate TYPE ty_rate
|
||||
iv_day TYPE ty_day
|
||||
RETURNING VALUE(rv_status) TYPE ty_status.
|
||||
|
||||
METHODS ticket_price
|
||||
IMPORTING iv_zone TYPE ty_zone
|
||||
iv_rate TYPE ty_rate
|
||||
iv_day TYPE ty_day
|
||||
iv_member TYPE ty_flag
|
||||
RETURNING VALUE(rv_price) TYPE ty_amount.
|
||||
|
||||
PRIVATE SECTION.
|
||||
TYPES:
|
||||
BEGIN OF ty_base_price,
|
||||
zone TYPE ty_zone,
|
||||
rate TYPE ty_rate,
|
||||
base TYPE ty_amount,
|
||||
END OF ty_base_price,
|
||||
tt_base_price TYPE HASHED TABLE OF ty_base_price WITH UNIQUE KEY zone rate.
|
||||
|
||||
CONSTANTS c_weekend_surcharge TYPE ty_amount VALUE '2.50'.
|
||||
CONSTANTS c_member_share TYPE i VALUE 80.
|
||||
|
||||
METHODS base_prices
|
||||
RETURNING VALUE(rt_price) TYPE tt_base_price.
|
||||
|
||||
METHODS weekend_surcharge
|
||||
IMPORTING iv_day TYPE ty_day
|
||||
RETURNING VALUE(rv_surcharge) TYPE ty_amount.
|
||||
|
||||
METHODS is_known_zone
|
||||
IMPORTING iv_zone TYPE ty_zone
|
||||
RETURNING VALUE(rv_known) TYPE abap_bool.
|
||||
|
||||
METHODS is_known_rate
|
||||
IMPORTING iv_rate TYPE ty_rate
|
||||
RETURNING VALUE(rv_known) TYPE abap_bool.
|
||||
|
||||
METHODS is_known_day
|
||||
IMPORTING iv_day TYPE ty_day
|
||||
RETURNING VALUE(rv_known) TYPE abap_bool.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}pool_ticket IMPLEMENTATION.
|
||||
METHOD check_booking.
|
||||
IF is_known_zone( iv_zone ) = abap_false.
|
||||
rv_status = c_status-zone.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
IF is_known_rate( iv_rate ) = abap_false.
|
||||
rv_status = c_status-rate.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
IF is_known_day( iv_day ) = abap_false.
|
||||
rv_status = c_status-day.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
rv_status = c_status-ok.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD ticket_price.
|
||||
IF check_booking( iv_zone = iv_zone
|
||||
iv_rate = iv_rate
|
||||
iv_day = iv_day ) <> c_status-ok.
|
||||
rv_price = 0.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
DATA(lt_price) = base_prices( ).
|
||||
READ TABLE lt_price INTO DATA(ls_price)
|
||||
WITH TABLE KEY zone = iv_zone rate = iv_rate.
|
||||
IF sy-subrc <> 0.
|
||||
rv_price = 0.
|
||||
RETURN.
|
||||
ENDIF.
|
||||
|
||||
rv_price = ls_price-base + weekend_surcharge( iv_day ).
|
||||
IF iv_member = c_flag-member.
|
||||
rv_price = rv_price * c_member_share / 100.
|
||||
ENDIF.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD base_prices.
|
||||
rt_price = VALUE #(
|
||||
( zone = 'IN' rate = 'A' base = '10.00' )
|
||||
( zone = 'IN' rate = 'C' base = '5.00' )
|
||||
( zone = 'IN' rate = 'S' base = '7.50' )
|
||||
( zone = 'OU' rate = 'A' base = '7.50' )
|
||||
( zone = 'OU' rate = 'C' base = '3.75' )
|
||||
( zone = 'OU' rate = 'S' base = '5.00' )
|
||||
( zone = 'SA' rate = 'A' base = '15.00' )
|
||||
( zone = 'SA' rate = 'C' base = '7.50' )
|
||||
( zone = 'SA' rate = 'S' base = '11.25' )
|
||||
( zone = 'AL' rate = 'A' base = '20.00' )
|
||||
( zone = 'AL' rate = 'C' base = '10.00' )
|
||||
( zone = 'AL' rate = 'S' base = '15.00' ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD weekend_surcharge.
|
||||
IF iv_day = 'SA' OR iv_day = 'SU'.
|
||||
rv_surcharge = c_weekend_surcharge.
|
||||
ENDIF.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD is_known_zone.
|
||||
rv_known = xsdbool( iv_zone = 'IN' OR iv_zone = 'OU'
|
||||
OR iv_zone = 'SA' OR iv_zone = 'AL' ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD is_known_rate.
|
||||
rv_known = xsdbool( iv_rate = 'A' OR iv_rate = 'C' OR iv_rate = 'S' ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD is_known_day.
|
||||
rv_known = xsdbool( iv_day = 'MO' OR iv_day = 'TU' OR iv_day = 'WE'
|
||||
OR iv_day = 'TH' OR iv_day = 'FR' OR iv_day = 'SA'
|
||||
OR iv_day = 'SU' ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
75
tasks_gen/train/G1135/reference/pool_ticket.testclasses.abap
Normal file
75
tasks_gen/train/G1135/reference/pool_ticket.testclasses.abap
Normal file
@@ -0,0 +1,75 @@
|
||||
CLASS ltc_pool_ticket DEFINITION FINAL FOR TESTING
|
||||
DURATION SHORT RISK LEVEL HARMLESS.
|
||||
|
||||
PRIVATE SECTION.
|
||||
DATA mo_cut TYPE REF TO {{p}}pool_ticket.
|
||||
|
||||
METHODS setup.
|
||||
METHODS valid_booking FOR TESTING.
|
||||
METHODS unknown_zone FOR TESTING.
|
||||
METHODS unknown_rate FOR TESTING.
|
||||
METHODS unknown_day FOR TESTING.
|
||||
METHODS price_indoor_adult FOR TESTING.
|
||||
METHODS price_weekend_surcharge FOR TESTING.
|
||||
METHODS price_member_discount FOR TESTING.
|
||||
METHODS price_invalid_booking FOR TESTING.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS ltc_pool_ticket IMPLEMENTATION.
|
||||
METHOD setup.
|
||||
mo_cut = NEW {{p}}pool_ticket( ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD valid_booking.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = {{p}}pool_ticket=>c_status-ok
|
||||
act = mo_cut->check_booking( iv_zone = 'AL' iv_rate = 'S' iv_day = 'SU' ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD unknown_zone.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = {{p}}pool_ticket=>c_status-zone
|
||||
act = mo_cut->check_booking( iv_zone = 'ZZ' iv_rate = 'A' iv_day = 'MO' ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD unknown_rate.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = {{p}}pool_ticket=>c_status-rate
|
||||
act = mo_cut->check_booking( iv_zone = 'OU' iv_rate = 'B' iv_day = 'MO' ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD unknown_day.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = {{p}}pool_ticket=>c_status-day
|
||||
act = mo_cut->check_booking( iv_zone = 'OU' iv_rate = 'C' iv_day = 'XX' ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD price_indoor_adult.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = CONV {{p}}pool_ticket=>ty_amount( '10.00' )
|
||||
act = mo_cut->ticket_price( iv_zone = 'IN' iv_rate = 'A' iv_day = 'TU'
|
||||
iv_member = {{p}}pool_ticket=>c_flag-guest ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD price_weekend_surcharge.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = CONV {{p}}pool_ticket=>ty_amount( '12.50' )
|
||||
act = mo_cut->ticket_price( iv_zone = 'IN' iv_rate = 'A' iv_day = 'SU'
|
||||
iv_member = {{p}}pool_ticket=>c_flag-guest ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD price_member_discount.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = CONV {{p}}pool_ticket=>ty_amount( '6.00' )
|
||||
act = mo_cut->ticket_price( iv_zone = 'OU' iv_rate = 'A' iv_day = 'FR'
|
||||
iv_member = {{p}}pool_ticket=>c_flag-member ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD price_invalid_booking.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = CONV {{p}}pool_ticket=>ty_amount( '0.00' )
|
||||
act = mo_cut->ticket_price( iv_zone = 'IN' iv_rate = 'A' iv_day = 'XX'
|
||||
iv_member = {{p}}pool_ticket=>c_flag-member ) ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
70
tasks_gen/train/G1135/spec.md
Normal file
70
tasks_gen/train/G1135/spec.md
Normal file
@@ -0,0 +1,70 @@
|
||||
# 1. Goal
|
||||
A leisure centre prices the entry tickets of its swimming pool. The ticket
|
||||
desk calls the class for each visitor and prints the price. The desk also needs
|
||||
one status code for each booking request.
|
||||
|
||||
# 2. Open questions
|
||||
None.
|
||||
|
||||
# 3. Context
|
||||
- No object of this task exists yet. Create everything that the contract lists.
|
||||
- The leisure centre has four areas. Their area codes are IN (indoor pool),
|
||||
OU (outdoor pool), SA (sauna area) and AL (all areas).
|
||||
- The visitor rates are A (adult), C (child) and S (senior).
|
||||
- The day keys are MO, TU, WE, TH, FR, SA and SU.
|
||||
|
||||
# 4. Contract
|
||||
- Create the class {{P}}POOL_TICKET in package $TMP.
|
||||
- The class is public and final. It has a public constructor without parameters.
|
||||
- The class has these public types:
|
||||
ty_zone TYPE c LENGTH 2, ty_rate TYPE c LENGTH 1, ty_day TYPE c LENGTH 2,
|
||||
ty_flag TYPE c LENGTH 1, ty_status TYPE c LENGTH 2,
|
||||
ty_amount TYPE p LENGTH 8 DECIMALS 2.
|
||||
- The class has the public constant structure c_status with the components
|
||||
ok = 'OK', zone = 'ZN', rate = 'RT', day = 'DY'.
|
||||
- The class has the public constant structure c_flag with the components
|
||||
member = 'X', guest = ' '.
|
||||
- The class has these public methods:
|
||||
check_booking
|
||||
IMPORTING iv_zone TYPE ty_zone
|
||||
iv_rate TYPE ty_rate
|
||||
iv_day TYPE ty_day
|
||||
RETURNING VALUE(rv_status) TYPE ty_status.
|
||||
ticket_price
|
||||
IMPORTING iv_zone TYPE ty_zone
|
||||
iv_rate TYPE ty_rate
|
||||
iv_day TYPE ty_day
|
||||
iv_member TYPE ty_flag
|
||||
RETURNING VALUE(rv_price) TYPE ty_amount.
|
||||
- Do not add other public methods.
|
||||
|
||||
# 5. Business rules
|
||||
1. An area code is known if it is IN, OU, SA or AL. Compare the codes exactly.
|
||||
Do not convert the codes to upper case.
|
||||
2. A rate code is known if it is A, C or S.
|
||||
3. A day key is known if it is MO, TU, WE, TH, FR, SA or SU.
|
||||
4. check_booking checks the area code, then the rate code, then the day key.
|
||||
It returns the status of the first check that fails. If all three checks
|
||||
pass, it returns OK.
|
||||
5. ticket_price returns 0 if check_booking does not return OK.
|
||||
6. Else the price is the base price of the area and the rate, plus the weekend
|
||||
surcharge, minus the member discount.
|
||||
7. The base price in euro:
|
||||
IN: A 10.00, C 5.00, S 7.50
|
||||
OU: A 7.50, C 3.75, S 5.00
|
||||
SA: A 15.00, C 7.50, S 11.25
|
||||
AL: A 20.00, C 10.00, S 15.00
|
||||
8. The weekend surcharge is 2.50. It applies when the day key is SA or SU.
|
||||
9. The member discount is 20 per cent. It applies when iv_member is X. Apply
|
||||
the discount to the sum of the base price and the surcharge.
|
||||
|
||||
# 6. Constraints
|
||||
- Release target: SAP_BASIS 816 (ABAP Platform 2025).
|
||||
- Coding standards: Clean ABAP. Method length below 40 statements. No global
|
||||
variables. No comment that restates the code.
|
||||
- Out of scope: do not change or create other objects.
|
||||
|
||||
# 7. Acceptance
|
||||
- The class is active and has no syntax error.
|
||||
- The hidden tests pass.
|
||||
- Write your own ABAP Unit tests for the class.
|
||||
42
tasks_gen/train/G1135/task.json
Normal file
42
tasks_gen/train/G1135/task.json
Normal file
@@ -0,0 +1,42 @@
|
||||
{
|
||||
"id": "G1135",
|
||||
"category": "A",
|
||||
"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}}POOL_TICKET"
|
||||
}
|
||||
],
|
||||
"out_of_scope": [],
|
||||
"hidden_tests": [
|
||||
{
|
||||
"type": "CLAS",
|
||||
"name": "{{P}}T31_HIDDEN",
|
||||
"file": "hidden/t31_hidden.clas.abap",
|
||||
"description": "T31 hidden tests"
|
||||
}
|
||||
],
|
||||
"reference": [
|
||||
{
|
||||
"type": "CLAS",
|
||||
"name": "{{P}}POOL_TICKET",
|
||||
"file": "reference/pool_ticket.clas.abap",
|
||||
"description": "Swimming pool ticket price",
|
||||
"testclasses_file": "reference/pool_ticket.testclasses.abap"
|
||||
}
|
||||
],
|
||||
"craft_checks": [
|
||||
"method_length",
|
||||
"no_global_variables",
|
||||
"named_types_in_signature"
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user