Files
abap-llm/tasks_gen/eval/G0188/reference/laundry_pricer.testclasses.abap

63 lines
2.8 KiB
ABAP

CLASS ltc_laundry_pricer DEFINITION FINAL FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
PRIVATE SECTION.
DATA mo_cut TYPE REF TO {{p}}laundry_pricer.
METHODS setup.
METHODS wash_basic FOR TESTING.
METHODS iron_rate FOR TESTING.
METHODS member_then_express FOR TESTING.
METHODS min_after_discount FOR TESTING.
METHODS unknown_service FOR TESTING.
ENDCLASS.
CLASS ltc_laundry_pricer IMPLEMENTATION.
METHOD setup.
mo_cut = NEW {{p}}laundry_pricer( ).
ENDMETHOD.
METHOD wash_basic.
DATA(lv_price) = mo_cut->calculate( iv_weight_kg = '2.00'
iv_service = {{p}}laundry_pricer=>c_service_wash
iv_express = abap_false
iv_member = abap_false ).
cl_abap_unit_assert=>assert_equals( exp = CONV {{p}}laundry_pricer=>ty_amount( '10.00' )
act = lv_price ).
ENDMETHOD.
METHOD iron_rate.
DATA(lv_price) = mo_cut->calculate( iv_weight_kg = '8.00'
iv_service = {{p}}laundry_pricer=>c_service_iron
iv_express = abap_false
iv_member = abap_false ).
cl_abap_unit_assert=>assert_equals( exp = CONV {{p}}laundry_pricer=>ty_amount( '12.00' )
act = lv_price ).
ENDMETHOD.
METHOD member_then_express.
DATA(lv_price) = mo_cut->calculate( iv_weight_kg = '4.00'
iv_service = {{p}}laundry_pricer=>c_service_wash
iv_express = abap_true
iv_member = abap_true ).
cl_abap_unit_assert=>assert_equals( exp = CONV {{p}}laundry_pricer=>ty_amount( '14.00' )
act = lv_price ).
ENDMETHOD.
METHOD min_after_discount.
DATA(lv_price) = mo_cut->calculate( iv_weight_kg = '2.00'
iv_service = {{p}}laundry_pricer=>c_service_wash
iv_express = abap_false
iv_member = abap_true ).
cl_abap_unit_assert=>assert_equals( exp = CONV {{p}}laundry_pricer=>ty_amount( '10.00' )
act = lv_price ).
ENDMETHOD.
METHOD unknown_service.
DATA(lv_price) = mo_cut->calculate( iv_weight_kg = '2.00'
iv_service = 'XXXX'
iv_express = abap_false
iv_member = abap_false ).
cl_abap_unit_assert=>assert_equals( exp = CONV {{p}}laundry_pricer=>ty_amount( '10.00' )
act = lv_price ).
ENDMETHOD.
ENDCLASS.