CLASS {{p}}t31_test DEFINITION PUBLIC FINAL CREATE PUBLIC FOR TESTING DURATION SHORT RISK LEVEL HARMLESS. PRIVATE SECTION. CLASS-DATA go_env TYPE REF TO if_cds_test_environment. CLASS-METHODS class_setup. CLASS-METHODS class_teardown. METHODS setup. METHODS size_data_of_one_brick FOR TESTING. ENDCLASS. CLASS {{p}}t31_test IMPLEMENTATION. METHOD class_setup. go_env = cl_cds_test_environment=>create( i_for_entity = '{{P}}I_BRICK_SIZE' ). ENDMETHOD. METHOD class_teardown. go_env->destroy( ). ENDMETHOD. METHOD setup. DATA lt_brick TYPE STANDARD TABLE OF {{p}}brick WITH EMPTY KEY. go_env->clear_doubles( ). lt_brick = VALUE #( ( brick_id = 'X1' mould = 'NF01' length_mm = 240 width_mm = 115 height_mm = 71 weight_g = 3200 ) ). go_env->insert_test_data( lt_brick ). ENDMETHOD. METHOD size_data_of_one_brick. SELECT SINGLE mould_family, volume_cm3, weight_kg, size_class FROM {{p}}i_brick_size WHERE brick_id = 'X1' INTO @DATA(ls_brick). cl_abap_unit_assert=>assert_equals( exp = 'NF' act = ls_brick-mould_family ). cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( '1959.6' ) act = CONV decfloat34( ls_brick-volume_cm3 ) ). cl_abap_unit_assert=>assert_equals( exp = CONV decfloat34( '3.2' ) act = CONV decfloat34( ls_brick-weight_kg ) ). cl_abap_unit_assert=>assert_equals( exp = 'M' act = ls_brick-size_class ). ENDMETHOD. ENDCLASS.