Snapshot: new training tasks (balanced generation), docs
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
33
tasks_gen/train/G1945/reference/cx_scaf_order.clas.abap
Normal file
33
tasks_gen/train/G1945/reference/cx_scaf_order.clas.abap
Normal file
@@ -0,0 +1,33 @@
|
||||
CLASS {{p}}cx_scaf_order DEFINITION
|
||||
PUBLIC
|
||||
INHERITING FROM cx_static_check
|
||||
FINAL
|
||||
CREATE PUBLIC.
|
||||
|
||||
PUBLIC SECTION.
|
||||
DATA order_id TYPE string READ-ONLY.
|
||||
DATA reason TYPE string READ-ONLY.
|
||||
|
||||
METHODS constructor
|
||||
IMPORTING
|
||||
iv_order_id TYPE string
|
||||
iv_reason TYPE string.
|
||||
|
||||
METHODS get_message
|
||||
RETURNING
|
||||
VALUE(rv_message) TYPE string.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}cx_scaf_order IMPLEMENTATION.
|
||||
METHOD constructor.
|
||||
super->constructor( ).
|
||||
order_id = iv_order_id.
|
||||
reason = iv_reason.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD get_message.
|
||||
MESSAGE ID '{{P}}SCAF_MSG' TYPE 'E' NUMBER '001'
|
||||
WITH order_id reason INTO rv_message.
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
87
tasks_gen/train/G1945/reference/t21_test.clas.abap
Normal file
87
tasks_gen/train/G1945/reference/t21_test.clas.abap
Normal file
@@ -0,0 +1,87 @@
|
||||
CLASS {{p}}t21_test DEFINITION PUBLIC FINAL CREATE PUBLIC
|
||||
FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
|
||||
PRIVATE SECTION.
|
||||
METHODS strip_period
|
||||
IMPORTING iv_text TYPE string
|
||||
RETURNING VALUE(rv_text) TYPE string.
|
||||
METHODS blocked_message FOR TESTING.
|
||||
METHODS stock_message FOR TESTING.
|
||||
METHODS warning_message FOR TESTING.
|
||||
METHODS info_message FOR TESTING.
|
||||
METHODS exception_message FOR TESTING.
|
||||
METHODS exception_attributes FOR TESTING.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}t21_test IMPLEMENTATION.
|
||||
METHOD strip_period.
|
||||
rv_text = iv_text.
|
||||
DATA(lv_len) = strlen( rv_text ).
|
||||
IF lv_len > 1.
|
||||
DATA(lv_last) = substring( val = rv_text off = lv_len - 1 len = 1 ).
|
||||
IF lv_last = '.'.
|
||||
rv_text = substring( val = rv_text len = lv_len - 1 ).
|
||||
ENDIF.
|
||||
ENDIF.
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD blocked_message.
|
||||
DATA lv_order TYPE string VALUE 'SO-100'.
|
||||
DATA lv_reason TYPE string VALUE 'Missing permit'.
|
||||
DATA lv_text TYPE string.
|
||||
MESSAGE ID '{{P}}SCAF_MSG' TYPE 'E' NUMBER '001'
|
||||
WITH lv_order lv_reason INTO lv_text.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = 'Scaffolding order SO-100 is blocked: Missing permit'
|
||||
act = strip_period( lv_text ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD stock_message.
|
||||
DATA lv_part TYPE string VALUE 'STD-300'.
|
||||
DATA lv_text TYPE string.
|
||||
MESSAGE ID '{{P}}SCAF_MSG' TYPE 'E' NUMBER '002'
|
||||
WITH lv_part INTO lv_text.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = 'Scaffold part STD-300 is not in stock'
|
||||
act = strip_period( lv_text ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD warning_message.
|
||||
DATA lv_order TYPE string VALUE 'SO-101'.
|
||||
DATA lv_limit TYPE string VALUE '900'.
|
||||
DATA lv_text TYPE string.
|
||||
MESSAGE ID '{{P}}SCAF_MSG' TYPE 'W' NUMBER '004'
|
||||
WITH lv_order lv_limit INTO lv_text.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = 'Order SO-101 exceeds the load limit of 900 kg'
|
||||
act = strip_period( lv_text ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD info_message.
|
||||
DATA lv_order TYPE string VALUE 'SO-102'.
|
||||
DATA lv_site TYPE string VALUE 'South Gate'.
|
||||
DATA lv_text TYPE string.
|
||||
MESSAGE ID '{{P}}SCAF_MSG' TYPE 'I' NUMBER '005'
|
||||
WITH lv_order lv_site INTO lv_text.
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = 'Order SO-102 was released for site South Gate'
|
||||
act = strip_period( lv_text ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD exception_message.
|
||||
DATA(lo_exception) = NEW {{p}}cx_scaf_order(
|
||||
iv_order_id = 'SO-100'
|
||||
iv_reason = 'Missing permit' ).
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = 'Scaffolding order SO-100 is blocked: Missing permit'
|
||||
act = strip_period( lo_exception->get_message( ) ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD exception_attributes.
|
||||
DATA(lo_exception) = NEW {{p}}cx_scaf_order(
|
||||
iv_order_id = 'SO-100'
|
||||
iv_reason = 'Missing permit' ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'SO-100' act = lo_exception->order_id ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'Missing permit' act = lo_exception->reason ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
Reference in New Issue
Block a user