AFF: More UT for testing deserializing (#5821)

more details in UT
This commit is contained in:
Albert Mink 2022-10-13 19:41:26 +02:00 committed by GitHub
parent 302ac77c44
commit 22214428d7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -360,10 +360,16 @@ CLASS ltcl_aff_metadata IMPLEMENTATION.
METHOD deserialize_non_defaults.
DATA:
lv_source TYPE string,
lv_source_xstring TYPE xstring,
ls_actual TYPE zif_abapgit_aff_intf_v1=>ty_main,
ls_expected TYPE zif_abapgit_aff_intf_v1=>ty_main.
lv_source TYPE string,
lv_source_xstring TYPE xstring,
ls_description_type TYPE zif_abapgit_aff_oo_types_v1=>ty_component_description,
ls_description_attr TYPE zif_abapgit_aff_oo_types_v1=>ty_component_description,
ls_description_meth_param TYPE zif_abapgit_aff_oo_types_v1=>ty_component_description,
ls_description_meth_params TYPE zif_abapgit_aff_oo_types_v1=>ty_component_descriptions,
ls_description_even TYPE zif_abapgit_aff_oo_types_v1=>ty_event,
ls_description_meth TYPE zif_abapgit_aff_oo_types_v1=>ty_method,
ls_actual TYPE zif_abapgit_aff_intf_v1=>ty_main,
ls_expected TYPE zif_abapgit_aff_intf_v1=>ty_main.
ls_expected-format_version = `1`.
@ -373,6 +379,27 @@ CLASS ltcl_aff_metadata IMPLEMENTATION.
ls_expected-category = zif_abapgit_aff_intf_v1=>co_category-db_procedure_proxy.
ls_expected-proxy = abap_true.
ls_description_type-name = 'TY_EXAMPLE_TYPE'.
ls_description_type-description = 'This is an example type'.
APPEND ls_description_type TO ls_expected-descriptions-types.
ls_description_attr-name = 'CO_EXAMPLE_CONSTANT'.
ls_description_attr-description = 'This is an example constant'.
APPEND ls_description_attr TO ls_expected-descriptions-attributes.
ls_description_even-name = 'EXAMPLE_EVENT'.
ls_description_even-description = 'This is an example event'.
APPEND ls_description_even TO ls_expected-descriptions-events.
ls_description_meth_param-name = 'I_PARAM'.
ls_description_meth_param-description = 'This is an example parameter'.
APPEND ls_description_meth_param TO ls_description_meth_params.
ls_description_meth-name = 'EXAMPLE_METHOD'.
ls_description_meth-description = 'This is an example method'.
ls_description_meth-parameters = ls_description_meth_params.
APPEND ls_description_meth TO ls_expected-descriptions-methods.
lv_source =
`{` && cl_abap_char_utilities=>newline &&
` "formatVersion": "1",` && cl_abap_char_utilities=>newline &&
@ -382,7 +409,39 @@ CLASS ltcl_aff_metadata IMPLEMENTATION.
` "abapLanguageVersion": "keyUser"` && cl_abap_char_utilities=>newline &&
` },` && cl_abap_char_utilities=>newline &&
` "category": "dbProcedureProxy",` && cl_abap_char_utilities=>newline &&
` "proxy": true` && cl_abap_char_utilities=>newline &&
` "proxy": true,` && cl_abap_char_utilities=>newline &&
` "descriptions": {` && cl_abap_char_utilities=>newline &&
` "types": [` && cl_abap_char_utilities=>newline &&
` {` && cl_abap_char_utilities=>newline &&
` "name": "TY_EXAMPLE_TYPE",` && cl_abap_char_utilities=>newline &&
` "description": "This is an example type"` && cl_abap_char_utilities=>newline &&
` }` && cl_abap_char_utilities=>newline &&
` ],` && cl_abap_char_utilities=>newline &&
` "attributes": [` && cl_abap_char_utilities=>newline &&
` {` && cl_abap_char_utilities=>newline &&
` "name": "CO_EXAMPLE_CONSTANT",` && cl_abap_char_utilities=>newline &&
` "description": "This is an example constant"` && cl_abap_char_utilities=>newline &&
` }` && cl_abap_char_utilities=>newline &&
` ],` && cl_abap_char_utilities=>newline &&
` "events": [` && cl_abap_char_utilities=>newline &&
` {` && cl_abap_char_utilities=>newline &&
` "name": "EXAMPLE_EVENT",` && cl_abap_char_utilities=>newline &&
` "description": "This is an example event"` && cl_abap_char_utilities=>newline &&
` }` && cl_abap_char_utilities=>newline &&
` ],` && cl_abap_char_utilities=>newline &&
` "methods": [` && cl_abap_char_utilities=>newline &&
` {` && cl_abap_char_utilities=>newline &&
` "name": "EXAMPLE_METHOD",` && cl_abap_char_utilities=>newline &&
` "description": "This is an example method",` && cl_abap_char_utilities=>newline &&
` "parameters": [` && cl_abap_char_utilities=>newline &&
` {` && cl_abap_char_utilities=>newline &&
` "name": "I_PARAM",` && cl_abap_char_utilities=>newline &&
` "description": "This is an example parameter"` && cl_abap_char_utilities=>newline &&
` }` && cl_abap_char_utilities=>newline &&
` ]` && cl_abap_char_utilities=>newline &&
` }` && cl_abap_char_utilities=>newline &&
` ]` && cl_abap_char_utilities=>newline &&
` }` && cl_abap_char_utilities=>newline &&
`}` && cl_abap_char_utilities=>newline.
lv_source_xstring = cl_abap_codepage=>convert_to( lv_source ).