Snapshot: new training tasks (balanced generation), docs
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
174
tasks_gen/train/G1926/hidden/kart_check_hidden.clas.abap
Normal file
174
tasks_gen/train/G1926/hidden/kart_check_hidden.clas.abap
Normal file
@@ -0,0 +1,174 @@
|
||||
CLASS {{p}}kart_check_hidden DEFINITION PUBLIC FINAL CREATE PUBLIC
|
||||
FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
|
||||
PUBLIC SECTION.
|
||||
INTERFACES {{p}}if_kart_check.
|
||||
PRIVATE SECTION.
|
||||
DATA mo_cut TYPE REF TO {{p}}if_kart_check.
|
||||
METHODS setup.
|
||||
METHODS assert_char_length
|
||||
IMPORTING iv_name TYPE string
|
||||
iv_length TYPE i.
|
||||
METHODS assert_number
|
||||
IMPORTING iv_name TYPE string
|
||||
iv_value TYPE i.
|
||||
METHODS reason_ok FOR TESTING.
|
||||
METHODS reason_codes FOR TESTING.
|
||||
METHODS limit_values FOR TESTING.
|
||||
METHODS opening_times FOR TESTING.
|
||||
METHODS reason_length FOR TESTING.
|
||||
METHODS booking_components FOR TESTING.
|
||||
METHODS bookings_is_table FOR TESTING.
|
||||
METHODS check_booking_ok FOR TESTING.
|
||||
METHODS check_group_ok FOR TESTING.
|
||||
METHODS is_open_at_noon FOR TESTING.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}kart_check_hidden IMPLEMENTATION.
|
||||
METHOD setup.
|
||||
mo_cut = me.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD assert_char_length.
|
||||
DATA lv_probe TYPE string.
|
||||
DATA lv_expected TYPE string.
|
||||
DATA ls_booking TYPE {{p}}if_kart_check=>ty_booking.
|
||||
ASSIGN COMPONENT iv_name OF STRUCTURE ls_booking TO FIELD-SYMBOL(<lv_field>).
|
||||
IF sy-subrc <> 0.
|
||||
cl_abap_unit_assert=>fail( msg = |Component { iv_name } is missing| ).
|
||||
RETURN.
|
||||
ENDIF.
|
||||
DO iv_length + 1 TIMES.
|
||||
lv_probe = lv_probe && 'X'.
|
||||
ENDDO.
|
||||
DO iv_length TIMES.
|
||||
lv_expected = lv_expected && 'X'.
|
||||
ENDDO.
|
||||
<lv_field> = lv_probe.
|
||||
cl_abap_unit_assert=>assert_equals( exp = lv_expected
|
||||
act = <lv_field>
|
||||
msg = |Length of { iv_name }| ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD assert_number.
|
||||
DATA ls_booking TYPE {{p}}if_kart_check=>ty_booking.
|
||||
ASSIGN COMPONENT iv_name OF STRUCTURE ls_booking TO FIELD-SYMBOL(<lv_field>).
|
||||
IF sy-subrc <> 0.
|
||||
cl_abap_unit_assert=>fail( msg = |Component { iv_name } is missing| ).
|
||||
RETURN.
|
||||
ENDIF.
|
||||
<lv_field> = iv_value.
|
||||
cl_abap_unit_assert=>assert_equals( exp = iv_value
|
||||
act = <lv_field>
|
||||
msg = |Value of { iv_name }| ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD reason_ok.
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'OK'
|
||||
act = {{p}}if_kart_check=>c_reason-ok ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD reason_codes.
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'NO_NAME'
|
||||
act = {{p}}if_kart_check=>c_reason-no_name ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'TOO_YOUNG'
|
||||
act = {{p}}if_kart_check=>c_reason-too_young ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'TOO_OLD'
|
||||
act = {{p}}if_kart_check=>c_reason-too_old ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'BAD_LAPS'
|
||||
act = {{p}}if_kart_check=>c_reason-bad_laps ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'CLOSED'
|
||||
act = {{p}}if_kart_check=>c_reason-closed ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'TOO_MANY'
|
||||
act = {{p}}if_kart_check=>c_reason-too_many ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD limit_values.
|
||||
cl_abap_unit_assert=>assert_equals( exp = 12
|
||||
act = {{p}}if_kart_check=>c_limit-min_age ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 75
|
||||
act = {{p}}if_kart_check=>c_limit-max_age ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 5
|
||||
act = {{p}}if_kart_check=>c_limit-min_laps ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 30
|
||||
act = {{p}}if_kart_check=>c_limit-max_laps ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 8
|
||||
act = {{p}}if_kart_check=>c_limit-max_drivers ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD opening_times.
|
||||
DATA lv_from TYPE t VALUE '090000'.
|
||||
DATA lv_to TYPE t VALUE '220000'.
|
||||
cl_abap_unit_assert=>assert_equals( exp = lv_from
|
||||
act = {{p}}if_kart_check=>c_open_from ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = lv_to
|
||||
act = {{p}}if_kart_check=>c_open_to ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD reason_length.
|
||||
DATA lv_reason TYPE {{p}}if_kart_check=>ty_reason.
|
||||
DATA lv_probe TYPE string.
|
||||
DO 13 TIMES.
|
||||
lv_probe = lv_probe && 'X'.
|
||||
ENDDO.
|
||||
lv_reason = lv_probe.
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'XXXXXXXXXXXX'
|
||||
act = lv_reason ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD booking_components.
|
||||
assert_char_length( iv_name = 'DRIVER_NAME' iv_length = 20 ).
|
||||
assert_number( iv_name = 'DRIVER_AGE' iv_value = 30 ).
|
||||
assert_number( iv_name = 'LAPS' iv_value = 10 ).
|
||||
DATA ls_booking TYPE {{p}}if_kart_check=>ty_booking.
|
||||
ls_booking-booking_time = '235959'.
|
||||
cl_abap_unit_assert=>assert_equals( exp = '235959'
|
||||
act = ls_booking-booking_time ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD bookings_is_table.
|
||||
DATA lt_bookings TYPE {{p}}if_kart_check=>tt_bookings.
|
||||
DATA(lo_descr) = cl_abap_typedescr=>describe_by_data( lt_bookings ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = cl_abap_typedescr=>typekind_table
|
||||
act = lo_descr->type_kind ).
|
||||
DATA(lo_table) = CAST cl_abap_tabledescr( lo_descr ).
|
||||
DATA(lo_row) = lo_table->get_table_line_type( ).
|
||||
DATA(lo_struct) = CAST cl_abap_structdescr( lo_row ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 4
|
||||
act = lines( lo_struct->components ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD check_booking_ok.
|
||||
DATA ls_booking TYPE {{p}}if_kart_check=>ty_booking.
|
||||
ls_booking-driver_name = 'MAX MUSTERMANN'.
|
||||
ls_booking-driver_age = 30.
|
||||
ls_booking-laps = 10.
|
||||
ls_booking-booking_time = '140000'.
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'OK'
|
||||
act = mo_cut->check_booking( ls_booking ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD check_group_ok.
|
||||
DATA lt_bookings TYPE {{p}}if_kart_check=>tt_bookings.
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'OK'
|
||||
act = mo_cut->check_group( lt_bookings ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD is_open_at_noon.
|
||||
DATA lv_time TYPE t VALUE '120000'.
|
||||
cl_abap_unit_assert=>assert_equals( exp = abap_true
|
||||
act = mo_cut->is_open( lv_time ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD {{p}}if_kart_check~check_booking.
|
||||
rv_reason = {{p}}if_kart_check=>c_reason-ok.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD {{p}}if_kart_check~check_group.
|
||||
rv_reason = {{p}}if_kart_check=>c_reason-ok.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD {{p}}if_kart_check~is_open.
|
||||
rv_open = abap_true.
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
Reference in New Issue
Block a user