Files
abap-llm/tasks_gen/eval/G0188/hidden/t02_hidden.clas.abap

114 lines
5.3 KiB
ABAP

CLASS {{p}}t02_hidden DEFINITION PUBLIC FINAL CREATE PUBLIC
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 dry_basic FOR TESTING.
METHODS iron_basic FOR TESTING.
METHODS iron_above_min FOR TESTING.
METHODS express_no_member FOR TESTING.
METHODS member_no_express FOR TESTING.
METHODS member_then_express FOR TESTING.
METHODS min_after_discount FOR TESTING.
METHODS unknown_service FOR TESTING.
METHODS rounding FOR TESTING.
ENDCLASS.
CLASS {{p}}t02_hidden 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 dry_basic.
DATA(lv_price) = mo_cut->calculate( iv_weight_kg = '3.00'
iv_service = {{p}}laundry_pricer=>c_service_dry
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 iron_basic.
DATA(lv_price) = mo_cut->calculate( iv_weight_kg = '5.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( '10.00' )
act = lv_price ).
ENDMETHOD.
METHOD iron_above_min.
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 express_no_member.
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_false ).
cl_abap_unit_assert=>assert_equals( exp = CONV {{p}}laundry_pricer=>ty_amount( '15.00' )
act = lv_price ).
ENDMETHOD.
METHOD member_no_express.
DATA(lv_price) = mo_cut->calculate( iv_weight_kg = '5.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( '11.25' )
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.
METHOD rounding.
DATA(lv_price) = mo_cut->calculate( iv_weight_kg = '2.23'
iv_service = {{p}}laundry_pricer=>c_service_wash
iv_express = abap_true
iv_member = abap_false ).
cl_abap_unit_assert=>assert_equals( exp = CONV {{p}}laundry_pricer=>ty_amount( '10.58' )
act = lv_price ).
ENDMETHOD.
ENDCLASS.