Snapshot: new training tasks (balanced generation), docs
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
35
tasks_gen/train/G1938/reference/if_log_plan.intf.abap
Normal file
35
tasks_gen/train/G1938/reference/if_log_plan.intf.abap
Normal file
@@ -0,0 +1,35 @@
|
||||
INTERFACE {{p}}if_log_plan PUBLIC.
|
||||
TYPES:
|
||||
ty_reason TYPE c LENGTH 10,
|
||||
ty_count TYPE i,
|
||||
BEGIN OF ty_log,
|
||||
dia TYPE i,
|
||||
len TYPE i,
|
||||
END OF ty_log,
|
||||
BEGIN OF ty_board,
|
||||
thick TYPE i,
|
||||
width TYPE i,
|
||||
END OF ty_board.
|
||||
|
||||
CONSTANTS:
|
||||
BEGIN OF c_reason,
|
||||
ok TYPE ty_reason VALUE 'OK',
|
||||
size TYPE ty_reason VALUE 'SIZE',
|
||||
thick TYPE ty_reason VALUE 'THICK',
|
||||
width TYPE ty_reason VALUE 'WIDTH',
|
||||
len TYPE ty_reason VALUE 'LEN',
|
||||
END OF c_reason,
|
||||
c_min_thick TYPE i VALUE 20,
|
||||
c_max_thick TYPE i VALUE 100,
|
||||
c_min_len TYPE i VALUE 100.
|
||||
|
||||
METHODS check
|
||||
IMPORTING is_log TYPE ty_log
|
||||
is_board TYPE ty_board
|
||||
RETURNING VALUE(rv_reason) TYPE ty_reason.
|
||||
|
||||
METHODS board_count
|
||||
IMPORTING is_log TYPE ty_log
|
||||
is_board TYPE ty_board
|
||||
RETURNING VALUE(rv_count) TYPE ty_count.
|
||||
ENDINTERFACE.
|
||||
70
tasks_gen/train/G1938/reference/if_log_plan_test.clas.abap
Normal file
70
tasks_gen/train/G1938/reference/if_log_plan_test.clas.abap
Normal file
@@ -0,0 +1,70 @@
|
||||
CLASS {{p}}if_log_plan_test DEFINITION PUBLIC FINAL CREATE PUBLIC
|
||||
FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
|
||||
|
||||
PUBLIC SECTION.
|
||||
INTERFACES {{p}}if_log_plan.
|
||||
|
||||
PRIVATE SECTION.
|
||||
METHODS reasons_are_set FOR TESTING.
|
||||
METHODS limits_are_set FOR TESTING.
|
||||
METHODS types_are_set FOR TESTING.
|
||||
METHODS signatures_match FOR TESTING.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}if_log_plan_test IMPLEMENTATION.
|
||||
METHOD {{p}}if_log_plan~check.
|
||||
rv_reason = {{p}}if_log_plan=>c_reason-ok.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD {{p}}if_log_plan~board_count.
|
||||
rv_count = 0.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD reasons_are_set.
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'OK'
|
||||
act = {{p}}if_log_plan=>c_reason-ok ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'SIZE'
|
||||
act = {{p}}if_log_plan=>c_reason-size ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'THICK'
|
||||
act = {{p}}if_log_plan=>c_reason-thick ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'WIDTH'
|
||||
act = {{p}}if_log_plan=>c_reason-width ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'LEN'
|
||||
act = {{p}}if_log_plan=>c_reason-len ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD limits_are_set.
|
||||
cl_abap_unit_assert=>assert_equals( exp = 20 act = {{p}}if_log_plan=>c_min_thick ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 100 act = {{p}}if_log_plan=>c_max_thick ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 100 act = {{p}}if_log_plan=>c_min_len ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD types_are_set.
|
||||
DATA lv_len TYPE i.
|
||||
DATA lv_reason TYPE {{p}}if_log_plan=>ty_reason.
|
||||
DESCRIBE FIELD lv_reason LENGTH lv_len IN CHARACTER MODE.
|
||||
cl_abap_unit_assert=>assert_equals( exp = 10 act = lv_len ).
|
||||
|
||||
DATA(ls_log) = VALUE {{p}}if_log_plan=>ty_log( dia = 300 len = 400 ).
|
||||
DATA(lo_log) = CAST cl_abap_structdescr(
|
||||
cl_abap_typedescr=>describe_by_data( ls_log ) ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 2
|
||||
act = lines( lo_log->get_components( ) ) ).
|
||||
|
||||
DATA(ls_board) = VALUE {{p}}if_log_plan=>ty_board( thick = 40 width = 200 ).
|
||||
DATA(lo_board) = CAST cl_abap_structdescr(
|
||||
cl_abap_typedescr=>describe_by_data( ls_board ) ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 2
|
||||
act = lines( lo_board->get_components( ) ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD signatures_match.
|
||||
DATA(ls_log) = VALUE {{p}}if_log_plan=>ty_log( dia = 300 len = 400 ).
|
||||
DATA(ls_board) = VALUE {{p}}if_log_plan=>ty_board( thick = 40 width = 200 ).
|
||||
DATA(lv_reason) = me->{{p}}if_log_plan~check( is_log = ls_log is_board = ls_board ).
|
||||
DATA(lv_count) = me->{{p}}if_log_plan~board_count( is_log = ls_log is_board = ls_board ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = {{p}}if_log_plan=>c_reason-ok act = lv_reason ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 0 act = lv_count ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
Reference in New Issue
Block a user