Snapshot: new training tasks (balanced generation), docs
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
127
tasks_gen/train/G1923/hidden/forge_hidden.clas.abap
Normal file
127
tasks_gen/train/G1923/hidden/forge_hidden.clas.abap
Normal file
@@ -0,0 +1,127 @@
|
||||
CLASS {{p}}forge_hidden DEFINITION PUBLIC FINAL CREATE PUBLIC
|
||||
FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
|
||||
PRIVATE SECTION.
|
||||
CLASS-DATA go_env TYPE REF TO if_cds_test_environment.
|
||||
CLASS-METHODS class_setup.
|
||||
CLASS-METHODS class_teardown.
|
||||
METHODS setup.
|
||||
METHODS open_jobs_only FOR TESTING.
|
||||
METHODS done_job_hidden FOR TESTING.
|
||||
METHODS job_without_article FOR TESTING.
|
||||
METHODS job_without_customer FOR TESTING.
|
||||
METHODS article_fields FOR TESTING.
|
||||
METHODS customer_fields FOR TESTING.
|
||||
METHODS heavy_effort FOR TESTING.
|
||||
METHODS light_effort FOR TESTING.
|
||||
METHODS exact_limit_light FOR TESTING.
|
||||
METHODS work_min_shown FOR TESTING.
|
||||
METHODS boundary_over_limit FOR TESTING.
|
||||
METHODS missing_article_no_row FOR TESTING.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}forge_hidden IMPLEMENTATION.
|
||||
METHOD class_setup.
|
||||
go_env = cl_cds_test_environment=>create( i_for_entity = '{{P}}I_FORGE_JOB' ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD class_teardown.
|
||||
go_env->destroy( ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD setup.
|
||||
DATA lt_job TYPE STANDARD TABLE OF {{p}}forgjob WITH EMPTY KEY.
|
||||
DATA lt_art TYPE STANDARD TABLE OF {{p}}forgart WITH EMPTY KEY.
|
||||
DATA lt_cus TYPE STANDARD TABLE OF {{p}}forgcus WITH EMPTY KEY.
|
||||
go_env->clear_doubles( ).
|
||||
lt_job = VALUE #(
|
||||
( job_id = 'B1' article_id = 'W1' job_date = '20240301' work_min = 200 job_state = 'O' )
|
||||
( job_id = 'B2' article_id = 'W2' job_date = '20240302' work_min = 60 job_state = 'O' )
|
||||
( job_id = 'B3' article_id = 'W3' job_date = '20240303' work_min = 90 job_state = 'O' )
|
||||
( job_id = 'B4' article_id = 'W1' job_date = '20240304' work_min = 120 job_state = 'D' )
|
||||
( job_id = 'B5' article_id = 'W4' job_date = '20240305' work_min = 30 job_state = 'O' )
|
||||
( job_id = 'B6' article_id = 'W1' job_date = '20240306' work_min = 120 job_state = 'O' )
|
||||
( job_id = 'B7' article_id = 'W2' job_date = '20240307' work_min = 121 job_state = 'O' )
|
||||
( job_id = 'B8' article_id = 'W9' job_date = '20240308' work_min = 45 job_state = 'O' ) ).
|
||||
lt_art = VALUE #(
|
||||
( article_id = 'W1' customer_id = 'K1' article_name = 'GATE' weight_kg = 40 )
|
||||
( article_id = 'W2' customer_id = 'K2' article_name = 'FENCE' weight_kg = 25 )
|
||||
( article_id = 'W4' customer_id = 'K9' article_name = 'RAILING' weight_kg = 15 ) ).
|
||||
lt_cus = VALUE #(
|
||||
( customer_id = 'K1' customer_name = 'ALPHA' city = 'BREMEN' )
|
||||
( customer_id = 'K2' customer_name = 'BETA' city = 'KIEL' )
|
||||
( customer_id = '' customer_name = 'ORPHAN' city = 'NOWHERE' ) ).
|
||||
go_env->insert_test_data( lt_job ).
|
||||
go_env->insert_test_data( lt_art ).
|
||||
go_env->insert_test_data( lt_cus ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD open_jobs_only.
|
||||
SELECT COUNT(*) FROM {{p}}i_forge_job INTO @DATA(lv_count).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 4 act = lv_count ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD done_job_hidden.
|
||||
SELECT COUNT(*) FROM {{p}}i_forge_job WHERE job_id = 'B4' INTO @DATA(lv_count).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 0 act = lv_count ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD job_without_article.
|
||||
SELECT COUNT(*) FROM {{p}}i_forge_job WHERE job_id = 'B3' INTO @DATA(lv_count).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 0 act = lv_count ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD job_without_customer.
|
||||
SELECT COUNT(*) FROM {{p}}i_forge_job WHERE job_id = 'B5' INTO @DATA(lv_count).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 0 act = lv_count ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD article_fields.
|
||||
SELECT SINGLE article_name, weight_kg FROM {{p}}i_forge_job
|
||||
WHERE job_id = 'B1' INTO @DATA(ls_row).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'GATE' act = ls_row-article_name ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 40 act = ls_row-weight_kg ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD customer_fields.
|
||||
SELECT SINGLE customer_name, city FROM {{p}}i_forge_job
|
||||
WHERE job_id = 'B2' INTO @DATA(ls_row).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'BETA' act = ls_row-customer_name ).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'KIEL' act = ls_row-city ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD heavy_effort.
|
||||
SELECT SINGLE effort FROM {{p}}i_forge_job
|
||||
WHERE job_id = 'B1' INTO @DATA(lv_effort).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'HEAVY' act = lv_effort ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD light_effort.
|
||||
SELECT SINGLE effort FROM {{p}}i_forge_job
|
||||
WHERE job_id = 'B2' INTO @DATA(lv_effort).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'LIGHT' act = lv_effort ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD exact_limit_light.
|
||||
SELECT SINGLE effort FROM {{p}}i_forge_job
|
||||
WHERE job_id = 'B6' INTO @DATA(lv_effort).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'LIGHT' act = lv_effort ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD work_min_shown.
|
||||
SELECT SINGLE work_min FROM {{p}}i_forge_job
|
||||
WHERE job_id = 'B6' INTO @DATA(lv_min).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 120 act = lv_min ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD boundary_over_limit.
|
||||
SELECT SINGLE effort FROM {{p}}i_forge_job
|
||||
WHERE job_id = 'B7' INTO @DATA(lv_effort).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 'HEAVY' act = lv_effort ).
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD missing_article_no_row.
|
||||
SELECT COUNT(*) FROM {{p}}i_forge_job WHERE job_id = 'B8' INTO @DATA(lv_count).
|
||||
cl_abap_unit_assert=>assert_equals( exp = 0 act = lv_count ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
Reference in New Issue
Block a user