From 22214428d752d3a1c05b00f54fb83c9c5cc5c826 Mon Sep 17 00:00:00 2001 From: Albert Mink Date: Thu, 13 Oct 2022 19:41:26 +0200 Subject: [PATCH] AFF: More UT for testing deserializing (#5821) more details in UT --- ..._abapgit_object_intf.clas.testclasses.abap | 69 +++++++++++++++++-- 1 file changed, 64 insertions(+), 5 deletions(-) diff --git a/src/objects/zcl_abapgit_object_intf.clas.testclasses.abap b/src/objects/zcl_abapgit_object_intf.clas.testclasses.abap index 47e740884..db4540204 100644 --- a/src/objects/zcl_abapgit_object_intf.clas.testclasses.abap +++ b/src/objects/zcl_abapgit_object_intf.clas.testclasses.abap @@ -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 ).