Files
abap-llm/tasks_gen/train/G1079/reference/soil_evaluator.testclasses.abap
2026-10-05 18:02:52 +02:00

61 lines
2.7 KiB
ABAP

CLASS ltc_soil_evaluator DEFINITION FINAL FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
PRIVATE SECTION.
DATA mo_cut TYPE REF TO {{p}}soil_evaluator.
METHODS setup.
METHODS valid_samples_grade_a FOR TESTING.
METHODS valid_samples_grade_b FOR TESTING.
METHODS valid_samples_grade_c FOR TESTING.
METHODS invalid_ph FOR TESTING.
METHODS empty_table FOR TESTING.
ENDCLASS.
CLASS ltc_soil_evaluator IMPLEMENTATION.
METHOD setup.
mo_cut = NEW {{p}}soil_evaluator( ).
ENDMETHOD.
METHOD valid_samples_grade_a.
DATA(lt_samples) = VALUE {{p}}soil_evaluator=>tt_sample(
( ph = '6.5' nutrient = 60 )
( ph = '7.0' nutrient = 55 ) ).
DATA(ls_result) = mo_cut->evaluate( lt_samples ).
cl_abap_unit_assert=>assert_equals( exp = {{p}}soil_evaluator=>c_status_ok act = ls_result-status ).
cl_abap_unit_assert=>assert_equals( exp = '6.8' act = ls_result-avg_ph ).
cl_abap_unit_assert=>assert_equals( exp = 58 act = ls_result-avg_nutrient ).
cl_abap_unit_assert=>assert_equals( exp = {{p}}soil_evaluator=>c_grade_a act = ls_result-grade ).
ENDMETHOD.
METHOD valid_samples_grade_b.
DATA(lt_samples) = VALUE {{p}}soil_evaluator=>tt_sample(
( ph = '5.5' nutrient = 35 )
( ph = '6.0' nutrient = 40 ) ).
DATA(ls_result) = mo_cut->evaluate( lt_samples ).
cl_abap_unit_assert=>assert_equals( exp = {{p}}soil_evaluator=>c_status_ok act = ls_result-status ).
cl_abap_unit_assert=>assert_equals( exp = {{p}}soil_evaluator=>c_grade_b act = ls_result-grade ).
ENDMETHOD.
METHOD valid_samples_grade_c.
DATA(lt_samples) = VALUE {{p}}soil_evaluator=>tt_sample(
( ph = '4.0' nutrient = 10 ) ).
DATA(ls_result) = mo_cut->evaluate( lt_samples ).
cl_abap_unit_assert=>assert_equals( exp = {{p}}soil_evaluator=>c_status_ok act = ls_result-status ).
cl_abap_unit_assert=>assert_equals( exp = {{p}}soil_evaluator=>c_grade_c act = ls_result-grade ).
ENDMETHOD.
METHOD invalid_ph.
DATA(lt_samples) = VALUE {{p}}soil_evaluator=>tt_sample(
( ph = '15.0' nutrient = 50 ) ).
DATA(ls_result) = mo_cut->evaluate( lt_samples ).
cl_abap_unit_assert=>assert_equals( exp = {{p}}soil_evaluator=>c_status_error act = ls_result-status ).
cl_abap_unit_assert=>assert_initial( act = ls_result-avg_ph ).
cl_abap_unit_assert=>assert_initial( act = ls_result-avg_nutrient ).
cl_abap_unit_assert=>assert_initial( act = ls_result-grade ).
ENDMETHOD.
METHOD empty_table.
DATA(lt_samples) = VALUE {{p}}soil_evaluator=>tt_sample( ).
DATA(ls_result) = mo_cut->evaluate( lt_samples ).
cl_abap_unit_assert=>assert_equals( exp = {{p}}soil_evaluator=>c_status_error act = ls_result-status ).
ENDMETHOD.
ENDCLASS.