66 lines
1.9 KiB
ABAP
66 lines
1.9 KiB
ABAP
CLASS {{p}}syrup_test DEFINITION PUBLIC FINAL CREATE PUBLIC
|
|
FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
|
|
|
|
PRIVATE SECTION.
|
|
CLASS-DATA go_env TYPE REF TO if_osql_test_environment.
|
|
|
|
CLASS-METHODS class_setup.
|
|
CLASS-METHODS class_teardown.
|
|
METHODS setup.
|
|
|
|
METHODS fields_are_complete FOR TESTING.
|
|
METHODS insert_and_select FOR TESTING.
|
|
METHODS duplicate_is_rejected FOR TESTING.
|
|
ENDCLASS.
|
|
|
|
|
|
CLASS {{p}}syrup_test IMPLEMENTATION.
|
|
|
|
METHOD class_setup.
|
|
go_env = cl_osql_test_environment=>create( i_dependency_list = VALUE #( ( '{{P}}SYRUP' ) ) ).
|
|
ENDMETHOD.
|
|
|
|
METHOD class_teardown.
|
|
go_env->destroy( ).
|
|
ENDMETHOD.
|
|
|
|
METHOD setup.
|
|
go_env->clear_doubles( ).
|
|
ENDMETHOD.
|
|
|
|
METHOD fields_are_complete.
|
|
DATA(lo_struct) = CAST cl_abap_structdescr( cl_abap_typedescr=>describe_by_name( '{{P}}SYRUP' ) ).
|
|
DATA(lt_fields) = lo_struct->get_ddic_field_list( ).
|
|
cl_abap_unit_assert=>assert_equals( exp = 9 act = lines( lt_fields ) ).
|
|
ENDMETHOD.
|
|
|
|
METHOD insert_and_select.
|
|
DATA ls_row TYPE {{p}}syrup.
|
|
ls_row-client = sy-mandt.
|
|
ls_row-delivery_id = 'A1'.
|
|
ls_row-grove_id = 'G1'.
|
|
ls_row-delivery_date = '20250301'.
|
|
ls_row-sap_liters = '100.00'.
|
|
ls_row-brix = '4.0'.
|
|
ls_row-quality_grade = '01'.
|
|
ls_row-payout = '300.00'.
|
|
ls_row-currency_code = 'EUR'.
|
|
INSERT {{p}}syrup FROM @ls_row.
|
|
cl_abap_unit_assert=>assert_subrc( exp = 0 ).
|
|
SELECT SINGLE grove_id FROM {{p}}syrup WHERE delivery_id = 'A1' INTO @DATA(lv_grove).
|
|
cl_abap_unit_assert=>assert_subrc( exp = 0 ).
|
|
cl_abap_unit_assert=>assert_equals( exp = 'G1' act = lv_grove ).
|
|
ENDMETHOD.
|
|
|
|
METHOD duplicate_is_rejected.
|
|
DATA ls_row TYPE {{p}}syrup.
|
|
ls_row-client = sy-mandt.
|
|
ls_row-delivery_id = 'A2'.
|
|
INSERT {{p}}syrup FROM @ls_row.
|
|
cl_abap_unit_assert=>assert_subrc( exp = 0 ).
|
|
INSERT {{p}}syrup FROM @ls_row.
|
|
cl_abap_unit_assert=>assert_subrc( exp = 4 ).
|
|
ENDMETHOD.
|
|
|
|
ENDCLASS.
|