diff --git a/src/ui/zcl_abapgit_gui_page_debuginfo.clas.abap b/src/ui/zcl_abapgit_gui_page_debuginfo.clas.abap index 9711639ed..26ebea5e0 100644 --- a/src/ui/zcl_abapgit_gui_page_debuginfo.clas.abap +++ b/src/ui/zcl_abapgit_gui_page_debuginfo.clas.abap @@ -72,32 +72,24 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_DEBUGINFO IMPLEMENTATION. METHOD render_supported_object_types. - DATA: lt_objects TYPE STANDARD TABLE OF ko100, - lv_list TYPE string, - ls_item TYPE zif_abapgit_definitions=>ty_item. + DATA: lv_list TYPE string, + lt_types TYPE zcl_abapgit_objects=>ty_types_tt, + lv_type LIKE LINE OF lt_types. - FIELD-SYMBOLS LIKE LINE OF lt_objects. - CALL FUNCTION 'TR_OBJECT_TABLE' - TABLES - wt_object_text = lt_objects - EXCEPTIONS - OTHERS = 1 ##FM_SUBRC_OK. + lt_types = zcl_abapgit_objects=>supported_list( ). - LOOP AT lt_objects ASSIGNING WHERE pgmid = 'R3TR'. - ls_item-obj_type = -object. - IF zcl_abapgit_objects=>is_supported( is_item = ls_item iv_native_only = abap_true ) = abap_true. - IF lv_list IS INITIAL. - lv_list = ls_item-obj_type. - ELSE. - lv_list = lv_list && `, ` && ls_item-obj_type. - ENDIF. + LOOP AT lt_types INTO lv_type. + IF lv_list IS INITIAL. + lv_list = lv_type. + ELSE. + lv_list = lv_list && `, ` && lv_type. ENDIF. ENDLOOP. rv_html = |

Supported objects: { lv_list }

|. - ENDMETHOD. " render_supported_object_types + ENDMETHOD. METHOD scripts. diff --git a/src/zcl_abapgit_objects.clas.abap b/src/zcl_abapgit_objects.clas.abap index f470ead6c..d59b43ccc 100644 --- a/src/zcl_abapgit_objects.clas.abap +++ b/src/zcl_abapgit_objects.clas.abap @@ -730,29 +730,32 @@ CLASS ZCL_ABAPGIT_OBJECTS IMPLEMENTATION. METHOD supported_list. - DATA: lv_type LIKE LINE OF rt_types, - lt_snode TYPE TABLE OF snode. + DATA: lt_objects TYPE STANDARD TABLE OF ko100, + lv_supported TYPE abap_bool, + ls_item TYPE zif_abapgit_definitions=>ty_item. - FIELD-SYMBOLS: LIKE LINE OF lt_snode. + FIELD-SYMBOLS LIKE LINE OF lt_objects. - CALL FUNCTION 'WB_TREE_ACTUALIZE' - EXPORTING - tree_name = 'PG_ZABAPGIT' - without_crossreference = abap_true - with_tcode_index = abap_true + CALL FUNCTION 'TR_OBJECT_TABLE' TABLES - p_tree = lt_snode. + wt_object_text = lt_objects + EXCEPTIONS + OTHERS = 1 ##FM_SUBRC_OK. - DELETE lt_snode WHERE type <> 'OPL' - OR name NP 'LCL_OBJECT_++++'. + LOOP AT lt_objects ASSIGNING WHERE pgmid = 'R3TR'. + ls_item-obj_type = -object. - LOOP AT lt_snode ASSIGNING . - lv_type = -name+11. - APPEND lv_type TO rt_types. + lv_supported = zcl_abapgit_objects=>is_supported( + is_item = ls_item + iv_native_only = abap_true ). + + IF lv_supported = abap_true. + APPEND -object TO rt_types. + ENDIF. ENDLOOP. - ENDMETHOD. "supported_list + ENDMETHOD. METHOD update_package_tree. diff --git a/src/zcl_abapgit_objects.clas.testclasses.abap b/src/zcl_abapgit_objects.clas.testclasses.abap index 88a7ce6c1..32890db8d 100644 --- a/src/zcl_abapgit_objects.clas.testclasses.abap +++ b/src/zcl_abapgit_objects.clas.testclasses.abap @@ -58,7 +58,7 @@ CLASS ltcl_dangerous IMPLEMENTATION. lt_types = zcl_abapgit_objects=>supported_list( ). lo_repo = zcl_abapgit_repo_srv=>get_instance( )->new_online( - iv_url = 'https://github.com/larshp/abapGit-Unit-Test.git' + iv_url = 'https://github.com/abapGit/Test-Objects.git' iv_branch_name = 'refs/heads/master' iv_package = c_package ). lo_repo->status( ). @@ -111,7 +111,6 @@ CLASS ltcl_object_types DEFINITION FOR TESTING RISK LEVEL HARMLESS DURATION SHOR PRIVATE SECTION. METHODS: - is_supported FOR TESTING, not_exist FOR TESTING RAISING zcx_abapgit_exception. ENDCLASS. "ltcl_object_types DEFINITION @@ -123,32 +122,6 @@ ENDCLASS. "ltcl_object_types DEFINITION *----------------------------------------------------------------------* CLASS ltcl_object_types IMPLEMENTATION. - METHOD is_supported. - - DATA: ls_item TYPE zif_abapgit_definitions=>ty_item, - lv_supported TYPE abap_bool, - lt_types TYPE zcl_abapgit_objects=>ty_types_tt. - - FIELD-SYMBOLS: LIKE LINE OF lt_types. - - - lt_types = zcl_abapgit_objects=>supported_list( ). - - LOOP AT lt_types ASSIGNING . - - CLEAR ls_item. - ls_item-obj_type = . - lv_supported = zcl_abapgit_objects=>is_supported( ls_item ). - - cl_abap_unit_assert=>assert_equals( - act = lv_supported - exp = abap_true - msg = ls_item-obj_type - quit = if_aunit_constants=>no ). - ENDLOOP. - - ENDMETHOD. "is_supported - METHOD not_exist. DATA: ls_item TYPE zif_abapgit_definitions=>ty_item, @@ -160,6 +133,8 @@ CLASS ltcl_object_types IMPLEMENTATION. lt_types = zcl_abapgit_objects=>supported_list( ). + cl_abap_unit_assert=>assert_not_initial( lt_types ). + LOOP AT lt_types ASSIGNING . CLEAR ls_item. ls_item-obj_name = 'ZABAPGIT_FOOBAR'. @@ -167,17 +142,16 @@ CLASS ltcl_object_types IMPLEMENTATION. lv_exists = zcl_abapgit_objects=>exists( ls_item ). cl_abap_unit_assert=>assert_equals( - act = lv_exists - exp = abap_false - msg = ls_item-obj_type - quit = if_aunit_constants=>no ). + act = lv_exists + exp = abap_false + msg = ls_item-obj_type + quit = if_aunit_constants=>no ). ENDLOOP. ENDMETHOD. "not_exist ENDCLASS. "ltcl_object_types IMPLEMENTATION - *----------------------------------------------------------------------* * CLASS ltcl_serialize DEFINITION *----------------------------------------------------------------------*