150 lines
5.6 KiB
ABAP
150 lines
5.6 KiB
ABAP
CLASS {{p}}t44_hidden DEFINITION PUBLIC FINAL CREATE PUBLIC
|
|
FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
|
|
PUBLIC SECTION.
|
|
INTERFACES {{p}}if_piano_tuning.
|
|
PRIVATE SECTION.
|
|
DATA mo_cut TYPE REF TO {{p}}if_piano_tuning.
|
|
METHODS setup.
|
|
METHODS code_values FOR TESTING.
|
|
METHODS number_values FOR TESTING.
|
|
METHODS type_lengths FOR TESTING.
|
|
METHODS visit_components FOR TESTING.
|
|
METHODS summary_components FOR TESTING.
|
|
METHODS visit_table FOR TESTING.
|
|
METHODS check_visit_signature FOR TESTING.
|
|
METHODS check_visits_signature FOR TESTING.
|
|
METHODS summarise_signature FOR TESTING.
|
|
METHODS count_blocked_signature FOR TESTING.
|
|
METHODS model_signature FOR TESTING.
|
|
ENDCLASS.
|
|
|
|
|
|
CLASS {{p}}t44_hidden IMPLEMENTATION.
|
|
METHOD {{p}}if_piano_tuning~check_visit.
|
|
rv_code = {{p}}if_piano_tuning=>c_code-ok.
|
|
ENDMETHOD.
|
|
|
|
METHOD {{p}}if_piano_tuning~check_visits.
|
|
rv_code = {{p}}if_piano_tuning=>c_code-ok.
|
|
ENDMETHOD.
|
|
|
|
METHOD {{p}}if_piano_tuning~summarise.
|
|
rs_summary = VALUE #( accepted = lines( it_visits )
|
|
first_code = {{p}}if_piano_tuning=>c_code-ok ).
|
|
ENDMETHOD.
|
|
|
|
METHOD {{p}}if_piano_tuning~count_blocked.
|
|
ev_count = lines( it_visits ).
|
|
ev_code = {{p}}if_piano_tuning=>c_code-ok.
|
|
ENDMETHOD.
|
|
|
|
METHOD {{p}}if_piano_tuning~is_tuning_model.
|
|
rv_tuning = abap_true.
|
|
ENDMETHOD.
|
|
|
|
METHOD setup.
|
|
mo_cut = me.
|
|
ENDMETHOD.
|
|
|
|
METHOD code_values.
|
|
cl_abap_unit_assert=>assert_equals( exp = 'OK' act = {{p}}if_piano_tuning=>c_code-ok ).
|
|
cl_abap_unit_assert=>assert_equals( exp = 'NO_VISIT' act = {{p}}if_piano_tuning=>c_code-no_visit ).
|
|
cl_abap_unit_assert=>assert_equals( exp = 'MODEL' act = {{p}}if_piano_tuning=>c_code-model ).
|
|
cl_abap_unit_assert=>assert_equals( exp = 'PITCH' act = {{p}}if_piano_tuning=>c_code-pitch ).
|
|
cl_abap_unit_assert=>assert_equals( exp = 'DISTANCE' act = {{p}}if_piano_tuning=>c_code-distance ).
|
|
cl_abap_unit_assert=>assert_equals( exp = 'COUNT' act = {{p}}if_piano_tuning=>c_code-too_many ).
|
|
ENDMETHOD.
|
|
|
|
METHOD number_values.
|
|
cl_abap_unit_assert=>assert_equals( exp = 25 act = {{p}}if_piano_tuning=>c_max_pitch ).
|
|
cl_abap_unit_assert=>assert_equals( exp = 60 act = {{p}}if_piano_tuning=>c_max_distance ).
|
|
cl_abap_unit_assert=>assert_equals( exp = 3 act = {{p}}if_piano_tuning=>c_max_pianos ).
|
|
ENDMETHOD.
|
|
|
|
METHOD type_lengths.
|
|
DATA lv_code TYPE {{p}}if_piano_tuning=>ty_code.
|
|
DATA lv_model TYPE {{p}}if_piano_tuning=>ty_model.
|
|
DATA lv_visit_id TYPE {{p}}if_piano_tuning=>ty_visit_id.
|
|
cl_abap_unit_assert=>assert_equals(
|
|
exp = 10
|
|
act = cl_abap_typedescr=>describe_by_data( lv_code )->length ).
|
|
cl_abap_unit_assert=>assert_equals(
|
|
exp = 4
|
|
act = cl_abap_typedescr=>describe_by_data( lv_model )->length ).
|
|
cl_abap_unit_assert=>assert_equals(
|
|
exp = 8
|
|
act = cl_abap_typedescr=>describe_by_data( lv_visit_id )->length ).
|
|
ENDMETHOD.
|
|
|
|
METHOD visit_components.
|
|
DATA ls_visit TYPE {{p}}if_piano_tuning=>ty_visit.
|
|
ls_visit-visit_id = 'V-000001'.
|
|
ls_visit-model = 'UPRI'.
|
|
ls_visit-pitch_dev = 12.
|
|
ls_visit-distance_km = 30.
|
|
ls_visit-piano_count = 2.
|
|
cl_abap_unit_assert=>assert_equals( exp = 'UPRI' act = ls_visit-model ).
|
|
cl_abap_unit_assert=>assert_equals( exp = 12 act = ls_visit-pitch_dev ).
|
|
cl_abap_unit_assert=>assert_equals( exp = 30 act = ls_visit-distance_km ).
|
|
cl_abap_unit_assert=>assert_equals( exp = 2 act = ls_visit-piano_count ).
|
|
ENDMETHOD.
|
|
|
|
METHOD summary_components.
|
|
DATA ls_summary TYPE {{p}}if_piano_tuning=>ty_summary.
|
|
ls_summary-accepted = 7.
|
|
ls_summary-rejected = 3.
|
|
ls_summary-first_code = {{p}}if_piano_tuning=>c_code-pitch.
|
|
cl_abap_unit_assert=>assert_equals( exp = 7 act = ls_summary-accepted ).
|
|
cl_abap_unit_assert=>assert_equals( exp = 3 act = ls_summary-rejected ).
|
|
ENDMETHOD.
|
|
|
|
METHOD visit_table.
|
|
DATA lt_visits TYPE {{p}}if_piano_tuning=>tt_visits.
|
|
DATA ls_visit TYPE {{p}}if_piano_tuning=>ty_visit.
|
|
ls_visit-visit_id = 'V-000002'.
|
|
INSERT ls_visit INTO TABLE lt_visits.
|
|
cl_abap_unit_assert=>assert_equals( exp = 1 act = lines( lt_visits ) ).
|
|
ENDMETHOD.
|
|
|
|
METHOD check_visit_signature.
|
|
DATA ls_visit TYPE {{p}}if_piano_tuning=>ty_visit.
|
|
ls_visit-visit_id = 'V-000003'.
|
|
cl_abap_unit_assert=>assert_equals(
|
|
exp = {{p}}if_piano_tuning=>c_code-ok
|
|
act = mo_cut->check_visit( is_visit = ls_visit ) ).
|
|
ENDMETHOD.
|
|
|
|
METHOD check_visits_signature.
|
|
DATA lt_visits TYPE {{p}}if_piano_tuning=>tt_visits.
|
|
cl_abap_unit_assert=>assert_equals(
|
|
exp = {{p}}if_piano_tuning=>c_code-ok
|
|
act = mo_cut->check_visits( it_visits = lt_visits ) ).
|
|
ENDMETHOD.
|
|
|
|
METHOD summarise_signature.
|
|
DATA lt_visits TYPE {{p}}if_piano_tuning=>tt_visits.
|
|
DATA ls_summary TYPE {{p}}if_piano_tuning=>ty_summary.
|
|
ls_summary = mo_cut->summarise( it_visits = lt_visits ).
|
|
cl_abap_unit_assert=>assert_equals( exp = 0 act = ls_summary-accepted ).
|
|
ENDMETHOD.
|
|
|
|
METHOD count_blocked_signature.
|
|
DATA lt_visits TYPE {{p}}if_piano_tuning=>tt_visits.
|
|
DATA lv_count TYPE i.
|
|
DATA lv_code TYPE {{p}}if_piano_tuning=>ty_code.
|
|
mo_cut->count_blocked(
|
|
EXPORTING it_visits = lt_visits
|
|
IMPORTING ev_count = lv_count
|
|
ev_code = lv_code ).
|
|
cl_abap_unit_assert=>assert_equals( exp = 0 act = lv_count ).
|
|
ENDMETHOD.
|
|
|
|
METHOD model_signature.
|
|
DATA lv_model TYPE {{p}}if_piano_tuning=>ty_model.
|
|
lv_model = 'UPRI'.
|
|
cl_abap_unit_assert=>assert_equals(
|
|
exp = abap_true
|
|
act = mo_cut->is_tuning_model( iv_model = lv_model ) ).
|
|
ENDMETHOD.
|
|
ENDCLASS.
|