Files
abap-llm/tasks_gen/train/G1937/reference/chimney_checker.testclasses.abap
2026-10-05 22:08:59 +02:00

103 lines
4.0 KiB
ABAP

CLASS ltc_chimney_checker DEFINITION FINAL FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
PRIVATE SECTION.
DATA mo_cut TYPE REF TO {{p}}if_sweep_check.
METHODS setup.
METHODS order_is_ok FOR TESTING.
METHODS no_flues FOR TESTING.
METHODS too_many_flues FOR TESTING.
METHODS unknown_kind FOR TESTING.
METHODS blocked_order FOR TESTING.
METHODS stale_sweep FOR TESTING.
METHODS fee_by_kind FOR TESTING.
METHODS fee_with_discount FOR TESTING.
METHODS fee_without_flues FOR TESTING.
ENDCLASS.
CLASS ltc_chimney_checker IMPLEMENTATION.
METHOD setup.
mo_cut = NEW {{p}}chimney_checker( ).
ENDMETHOD.
METHOD order_is_ok.
cl_abap_unit_assert=>assert_equals(
exp = {{p}}if_sweep_check=>c_reason-ok
act = mo_cut->check_order( iv_flues = 2
iv_kind = {{p}}if_sweep_check=>c_kind-open
iv_last_sweep = 2024
iv_year = 2025
iv_blocked = abap_false ) ).
ENDMETHOD.
METHOD no_flues.
cl_abap_unit_assert=>assert_equals(
exp = {{p}}if_sweep_check=>c_reason-no_flues
act = mo_cut->check_order( iv_flues = 0
iv_kind = {{p}}if_sweep_check=>c_kind-closed
iv_last_sweep = 2025
iv_year = 2025
iv_blocked = abap_false ) ).
ENDMETHOD.
METHOD too_many_flues.
cl_abap_unit_assert=>assert_equals(
exp = {{p}}if_sweep_check=>c_reason-too_many
act = mo_cut->check_order( iv_flues = 13
iv_kind = {{p}}if_sweep_check=>c_kind-open
iv_last_sweep = 2025
iv_year = 2025
iv_blocked = abap_false ) ).
ENDMETHOD.
METHOD unknown_kind.
cl_abap_unit_assert=>assert_equals(
exp = {{p}}if_sweep_check=>c_reason-bad_kind
act = mo_cut->check_order( iv_flues = 2
iv_kind = 'GAS'
iv_last_sweep = 2025
iv_year = 2025
iv_blocked = abap_false ) ).
ENDMETHOD.
METHOD blocked_order.
cl_abap_unit_assert=>assert_equals(
exp = {{p}}if_sweep_check=>c_reason-blocked
act = mo_cut->check_order( iv_flues = 2
iv_kind = {{p}}if_sweep_check=>c_kind-open
iv_last_sweep = 2024
iv_year = 2025
iv_blocked = abap_true ) ).
ENDMETHOD.
METHOD stale_sweep.
cl_abap_unit_assert=>assert_equals(
exp = {{p}}if_sweep_check=>c_reason-old_sweep
act = mo_cut->check_order( iv_flues = 2
iv_kind = {{p}}if_sweep_check=>c_kind-indust
iv_last_sweep = 2022
iv_year = 2025
iv_blocked = abap_false ) ).
ENDMETHOD.
METHOD fee_by_kind.
cl_abap_unit_assert=>assert_equals(
exp = CONV {{p}}if_sweep_check=>ty_amount( '240.00' )
act = mo_cut->fee( iv_flues = 4 iv_kind = {{p}}if_sweep_check=>c_kind-open ) ).
cl_abap_unit_assert=>assert_equals(
exp = CONV {{p}}if_sweep_check=>ty_amount( '180.00' )
act = mo_cut->fee( iv_flues = 4 iv_kind = {{p}}if_sweep_check=>c_kind-closed ) ).
ENDMETHOD.
METHOD fee_with_discount.
cl_abap_unit_assert=>assert_equals(
exp = CONV {{p}}if_sweep_check=>ty_amount( '243.00' )
act = mo_cut->fee( iv_flues = 6 iv_kind = {{p}}if_sweep_check=>c_kind-closed ) ).
ENDMETHOD.
METHOD fee_without_flues.
cl_abap_unit_assert=>assert_equals(
exp = CONV {{p}}if_sweep_check=>ty_amount( '0.00' )
act = mo_cut->fee( iv_flues = 0 iv_kind = {{p}}if_sweep_check=>c_kind-open ) ).
ENDMETHOD.
ENDCLASS.