79 lines
3.3 KiB
ABAP
79 lines
3.3 KiB
ABAP
CLASS {{p}}t_runlog_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 runs_of_still FOR TESTING.
|
|
METHODS wash_volume FOR TESTING.
|
|
METHODS spirit_volume FOR TESTING.
|
|
METHODS distinct_casks FOR TESTING.
|
|
METHODS last_run FOR TESTING.
|
|
METHODS failed_runs_skipped FOR TESTING.
|
|
ENDCLASS.
|
|
|
|
|
|
CLASS {{p}}t_runlog_hidden IMPLEMENTATION.
|
|
METHOD class_setup.
|
|
go_env = cl_cds_test_environment=>create( i_for_entity = '{{P}}I_STILL_OUTPUT' ).
|
|
ENDMETHOD.
|
|
|
|
METHOD class_teardown.
|
|
go_env->destroy( ).
|
|
ENDMETHOD.
|
|
|
|
METHOD setup.
|
|
DATA lt_runlog TYPE STANDARD TABLE OF {{p}}runlog WITH EMPTY KEY.
|
|
go_env->clear_doubles( ).
|
|
lt_runlog = VALUE #(
|
|
( run_id = 'R1' still_id = 'STILL-A' run_date = '20240301'
|
|
wash_litre = '1000.0' spirit_litre = '120.0' strength_pct = '68.50' cask_no = 'C1' )
|
|
( run_id = 'R2' still_id = 'STILL-A' run_date = '20240315'
|
|
wash_litre = '1200.0' spirit_litre = '150.0' strength_pct = '70.00' cask_no = 'C2' )
|
|
( run_id = 'R3' still_id = 'STILL-A' run_date = '20240401'
|
|
wash_litre = '900.0' spirit_litre = '100.0' strength_pct = '69.00' cask_no = 'C1' )
|
|
( run_id = 'R4' still_id = 'STILL-B' run_date = '20240210'
|
|
wash_litre = '800.0' spirit_litre = '0.0' strength_pct = '0.00' cask_no = '' )
|
|
( run_id = 'R5' still_id = 'STILL-B' run_date = '20240220'
|
|
wash_litre = '700.0' spirit_litre = '90.0' strength_pct = '65.00' cask_no = 'C3' )
|
|
( run_id = 'R6' still_id = 'STILL-C' run_date = '20240305'
|
|
wash_litre = '500.0' spirit_litre = '0.0' strength_pct = '0.00' cask_no = '' ) ).
|
|
go_env->insert_test_data( lt_runlog ).
|
|
ENDMETHOD.
|
|
|
|
METHOD runs_of_still.
|
|
SELECT SINGLE runs FROM {{p}}i_still_output WHERE still_id = 'STILL-A' INTO @DATA(lv_runs).
|
|
cl_abap_unit_assert=>assert_equals( exp = 3 act = lv_runs ).
|
|
ENDMETHOD.
|
|
|
|
METHOD wash_volume.
|
|
SELECT SINGLE wash_l FROM {{p}}i_still_output WHERE still_id = 'STILL-A' INTO @DATA(lv_wash).
|
|
cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( '3100.0' )
|
|
act = CONV decfloat34( lv_wash ) ).
|
|
ENDMETHOD.
|
|
|
|
METHOD spirit_volume.
|
|
SELECT SINGLE spirit_l FROM {{p}}i_still_output WHERE still_id = 'STILL-A' INTO @DATA(lv_spirit).
|
|
cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( '370.0' )
|
|
act = CONV decfloat34( lv_spirit ) ).
|
|
ENDMETHOD.
|
|
|
|
METHOD distinct_casks.
|
|
SELECT SINGLE casks FROM {{p}}i_still_output WHERE still_id = 'STILL-A' INTO @DATA(lv_casks).
|
|
cl_abap_unit_assert=>assert_equals( exp = 2 act = lv_casks ).
|
|
ENDMETHOD.
|
|
|
|
METHOD last_run.
|
|
SELECT SINGLE last_run FROM {{p}}i_still_output WHERE still_id = 'STILL-A' INTO @DATA(lv_last).
|
|
cl_abap_unit_assert=>assert_equals( exp = CONV dats( '20240401' ) act = lv_last ).
|
|
ENDMETHOD.
|
|
|
|
METHOD failed_runs_skipped.
|
|
SELECT COUNT(*) FROM {{p}}i_still_output INTO @DATA(lv_rows).
|
|
cl_abap_unit_assert=>assert_equals( exp = 2 act = lv_rows ).
|
|
SELECT SINGLE runs FROM {{p}}i_still_output WHERE still_id = 'STILL-B' INTO @DATA(lv_runs).
|
|
cl_abap_unit_assert=>assert_equals( exp = 1 act = lv_runs ).
|
|
ENDMETHOD.
|
|
ENDCLASS.
|