Files
abap-llm/tasks_gen/eval/G0171/reference/kiln_pricer.testclasses.abap

93 lines
3.2 KiB
ABAP

CLASS ltc_kiln_pricer DEFINITION FINAL FOR TESTING
DURATION SHORT RISK LEVEL HARMLESS.
PRIVATE SECTION.
DATA mo_cut TYPE REF TO {{p}}if_kiln_price.
METHODS setup.
METHODS base_fee FOR TESTING.
METHODS piece_fee FOR TESTING.
METHODS weight_surcharge FOR TESTING.
METHODS clay_factor FOR TESTING.
METHODS glaze_fee FOR TESTING.
METHODS member_discount FOR TESTING.
METHODS initial_clay FOR TESTING.
ENDCLASS.
CLASS ltc_kiln_pricer IMPLEMENTATION.
METHOD setup.
mo_cut = NEW {{p}}kiln_pricer( ).
ENDMETHOD.
METHOD base_fee.
cl_abap_unit_assert=>assert_equals(
exp = '40.00'
act = mo_cut->calculate_price( iv_pieces = 0
iv_weight = '0.00'
iv_clay = 'EA'
iv_glaze = abap_false
iv_member = abap_false ) ).
ENDMETHOD.
METHOD piece_fee.
cl_abap_unit_assert=>assert_equals(
exp = '100.00'
act = mo_cut->calculate_price( iv_pieces = 5
iv_weight = '0.00'
iv_clay = 'EA'
iv_glaze = abap_false
iv_member = abap_false ) ).
ENDMETHOD.
METHOD weight_surcharge.
cl_abap_unit_assert=>assert_equals(
exp = '55.00'
act = mo_cut->calculate_price( iv_pieces = 0
iv_weight = '15.00'
iv_clay = 'EA'
iv_glaze = abap_false
iv_member = abap_false ) ).
ENDMETHOD.
METHOD clay_factor.
cl_abap_unit_assert=>assert_equals(
exp = '60.00'
act = mo_cut->calculate_price( iv_pieces = 0
iv_weight = '0.00'
iv_clay = 'PO'
iv_glaze = abap_false
iv_member = abap_false ) ).
ENDMETHOD.
METHOD glaze_fee.
cl_abap_unit_assert=>assert_equals(
exp = '65.00'
act = mo_cut->calculate_price( iv_pieces = 0
iv_weight = '0.00'
iv_clay = 'EA'
iv_glaze = abap_true
iv_member = abap_false ) ).
ENDMETHOD.
METHOD member_discount.
cl_abap_unit_assert=>assert_equals(
exp = '34.00'
act = mo_cut->calculate_price( iv_pieces = 0
iv_weight = '0.00'
iv_clay = 'EA'
iv_glaze = abap_false
iv_member = abap_true ) ).
ENDMETHOD.
METHOD initial_clay.
cl_abap_unit_assert=>assert_equals(
exp = '0.00'
act = mo_cut->calculate_price( iv_pieces = 0
iv_weight = '0.00'
iv_clay = space
iv_glaze = abap_false
iv_member = abap_false ) ).
ENDMETHOD.
ENDCLASS.