Snapshot: new training tasks (balanced generation), docs
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
9
tasks_gen/train/G1946/reference/roast_base.stru.asabap
Normal file
9
tasks_gen/train/G1946/reference/roast_base.stru.asabap
Normal file
@@ -0,0 +1,9 @@
|
||||
@EndUserText.label : 'Common fields of a roast batch'
|
||||
@AbapCatalog.enhancement.category : #NOT_EXTENSIBLE
|
||||
define structure {{p}}roast_base {
|
||||
site : abap.char(4);
|
||||
batch_no : abap.char(10);
|
||||
roast_day : abap.dats;
|
||||
green_kg : abap.dec(9,3);
|
||||
roasted_kg : abap.dec(9,3);
|
||||
}
|
||||
14
tasks_gen/train/G1946/reference/roast_result.stru.asabap
Normal file
14
tasks_gen/train/G1946/reference/roast_result.stru.asabap
Normal file
@@ -0,0 +1,14 @@
|
||||
@EndUserText.label : 'Result of one roast batch'
|
||||
@AbapCatalog.enhancement.category : #NOT_EXTENSIBLE
|
||||
define structure {{p}}roast_result {
|
||||
site : abap.char(4);
|
||||
batch_no : abap.char(10);
|
||||
roast_day : abap.dats;
|
||||
green_kg : abap.dec(9,3);
|
||||
roasted_kg : abap.dec(9,3);
|
||||
roast_level : abap.char(1);
|
||||
roast_min : abap.int4;
|
||||
loss_pct : abap.dec(5,2);
|
||||
roaster_id : abap.char(8);
|
||||
checked : abap.char(1);
|
||||
}
|
||||
46
tasks_gen/train/G1946/reference/roast_test.clas.abap
Normal file
46
tasks_gen/train/G1946/reference/roast_test.clas.abap
Normal file
@@ -0,0 +1,46 @@
|
||||
CLASS {{p}}roast_test DEFINITION PUBLIC FINAL CREATE PUBLIC
|
||||
FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
|
||||
PRIVATE SECTION.
|
||||
METHODS base_has_five_fields FOR TESTING.
|
||||
METHODS result_has_ten_fields FOR TESTING.
|
||||
METHODS loss_has_two_decimals FOR TESTING.
|
||||
METHODS result_starts_with_base FOR TESTING.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}roast_test IMPLEMENTATION.
|
||||
METHOD base_has_five_fields.
|
||||
DATA(lo_str) = CAST cl_abap_structdescr(
|
||||
cl_abap_typedescr=>describe_by_name( '{{P}}ROAST_BASE' ) ).
|
||||
DATA(lt_fields) = lo_str->get_ddic_field_list( ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 5 act = lines( lt_fields ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD result_has_ten_fields.
|
||||
DATA(lo_str) = CAST cl_abap_structdescr(
|
||||
cl_abap_typedescr=>describe_by_name( '{{P}}ROAST_RESULT' ) ).
|
||||
DATA(lt_fields) = lo_str->get_ddic_field_list( ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 10 act = lines( lt_fields ) ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD loss_has_two_decimals.
|
||||
DATA(lo_str) = CAST cl_abap_structdescr(
|
||||
cl_abap_typedescr=>describe_by_name( '{{P}}ROAST_RESULT' ) ).
|
||||
DATA(lt_fields) = lo_str->get_ddic_field_list( ).
|
||||
READ TABLE lt_fields INTO DATA(ls_field) WITH KEY fieldname = 'LOSS_PCT'.
|
||||
cl_abap_unit_assert=>assert_subrc( exp = 0 ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 2 act = ls_field-decimals ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD result_starts_with_base.
|
||||
DATA(lo_base) = CAST cl_abap_structdescr(
|
||||
cl_abap_typedescr=>describe_by_name( '{{P}}ROAST_BASE' ) ).
|
||||
DATA(lo_res) = CAST cl_abap_structdescr(
|
||||
cl_abap_typedescr=>describe_by_name( '{{P}}ROAST_RESULT' ) ).
|
||||
DATA(lt_base) = lo_base->get_ddic_field_list( ).
|
||||
DATA(lt_res) = lo_res->get_ddic_field_list( ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = lt_base[ 1 ]-fieldname act = lt_res[ 1 ]-fieldname ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = lt_base[ 5 ]-fieldname act = lt_res[ 5 ]-fieldname ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = lt_base[ 5 ]-leng act = lt_res[ 5 ]-leng ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
Reference in New Issue
Block a user