fix SUPPORTED_LIST (#1293)

* fix SUPPORTED_LIST

* and fail unit test if nothing is supported

* moved test objects to abapGit organization
This commit is contained in:
Lars Hvam 2018-04-03 16:22:03 +02:00 committed by GitHub
parent 13a559779f
commit 3b09bdba29
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 35 additions and 66 deletions

View File

@ -72,32 +72,24 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_DEBUGINFO IMPLEMENTATION.
METHOD render_supported_object_types. METHOD render_supported_object_types.
DATA: lt_objects TYPE STANDARD TABLE OF ko100, DATA: lv_list TYPE string,
lv_list TYPE string, lt_types TYPE zcl_abapgit_objects=>ty_types_tt,
ls_item TYPE zif_abapgit_definitions=>ty_item. lv_type LIKE LINE OF lt_types.
FIELD-SYMBOLS <ls_object> LIKE LINE OF lt_objects.
CALL FUNCTION 'TR_OBJECT_TABLE' lt_types = zcl_abapgit_objects=>supported_list( ).
TABLES
wt_object_text = lt_objects
EXCEPTIONS
OTHERS = 1 ##FM_SUBRC_OK.
LOOP AT lt_objects ASSIGNING <ls_object> WHERE pgmid = 'R3TR'. LOOP AT lt_types INTO lv_type.
ls_item-obj_type = <ls_object>-object.
IF zcl_abapgit_objects=>is_supported( is_item = ls_item iv_native_only = abap_true ) = abap_true.
IF lv_list IS INITIAL. IF lv_list IS INITIAL.
lv_list = ls_item-obj_type. lv_list = lv_type.
ELSE. ELSE.
lv_list = lv_list && `, ` && ls_item-obj_type. lv_list = lv_list && `, ` && lv_type.
ENDIF.
ENDIF. ENDIF.
ENDLOOP. ENDLOOP.
rv_html = |<p>Supported objects: { lv_list }</p>|. rv_html = |<p>Supported objects: { lv_list }</p>|.
ENDMETHOD. " render_supported_object_types ENDMETHOD.
METHOD scripts. METHOD scripts.

View File

@ -730,29 +730,32 @@ CLASS ZCL_ABAPGIT_OBJECTS IMPLEMENTATION.
METHOD supported_list. METHOD supported_list.
DATA: lv_type LIKE LINE OF rt_types, DATA: lt_objects TYPE STANDARD TABLE OF ko100,
lt_snode TYPE TABLE OF snode. lv_supported TYPE abap_bool,
ls_item TYPE zif_abapgit_definitions=>ty_item.
FIELD-SYMBOLS: <ls_snode> LIKE LINE OF lt_snode. FIELD-SYMBOLS <ls_object> LIKE LINE OF lt_objects.
CALL FUNCTION 'WB_TREE_ACTUALIZE' CALL FUNCTION 'TR_OBJECT_TABLE'
EXPORTING
tree_name = 'PG_ZABAPGIT'
without_crossreference = abap_true
with_tcode_index = abap_true
TABLES TABLES
p_tree = lt_snode. wt_object_text = lt_objects
EXCEPTIONS
OTHERS = 1 ##FM_SUBRC_OK.
DELETE lt_snode WHERE type <> 'OPL' LOOP AT lt_objects ASSIGNING <ls_object> WHERE pgmid = 'R3TR'.
OR name NP 'LCL_OBJECT_++++'. ls_item-obj_type = <ls_object>-object.
LOOP AT lt_snode ASSIGNING <ls_snode>. lv_supported = zcl_abapgit_objects=>is_supported(
lv_type = <ls_snode>-name+11. is_item = ls_item
APPEND lv_type TO rt_types. iv_native_only = abap_true ).
IF lv_supported = abap_true.
APPEND <ls_object>-object TO rt_types.
ENDIF.
ENDLOOP. ENDLOOP.
ENDMETHOD. "supported_list ENDMETHOD.
METHOD update_package_tree. METHOD update_package_tree.

View File

@ -58,7 +58,7 @@ CLASS ltcl_dangerous IMPLEMENTATION.
lt_types = zcl_abapgit_objects=>supported_list( ). lt_types = zcl_abapgit_objects=>supported_list( ).
lo_repo = zcl_abapgit_repo_srv=>get_instance( )->new_online( 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_branch_name = 'refs/heads/master'
iv_package = c_package ). iv_package = c_package ).
lo_repo->status( ). lo_repo->status( ).
@ -111,7 +111,6 @@ CLASS ltcl_object_types DEFINITION FOR TESTING RISK LEVEL HARMLESS DURATION SHOR
PRIVATE SECTION. PRIVATE SECTION.
METHODS: METHODS:
is_supported FOR TESTING,
not_exist FOR TESTING RAISING zcx_abapgit_exception. not_exist FOR TESTING RAISING zcx_abapgit_exception.
ENDCLASS. "ltcl_object_types DEFINITION ENDCLASS. "ltcl_object_types DEFINITION
@ -123,32 +122,6 @@ ENDCLASS. "ltcl_object_types DEFINITION
*----------------------------------------------------------------------* *----------------------------------------------------------------------*
CLASS ltcl_object_types IMPLEMENTATION. 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: <lv_type> LIKE LINE OF lt_types.
lt_types = zcl_abapgit_objects=>supported_list( ).
LOOP AT lt_types ASSIGNING <lv_type>.
CLEAR ls_item.
ls_item-obj_type = <lv_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. METHOD not_exist.
DATA: ls_item TYPE zif_abapgit_definitions=>ty_item, 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( ). lt_types = zcl_abapgit_objects=>supported_list( ).
cl_abap_unit_assert=>assert_not_initial( lt_types ).
LOOP AT lt_types ASSIGNING <lv_type>. LOOP AT lt_types ASSIGNING <lv_type>.
CLEAR ls_item. CLEAR ls_item.
ls_item-obj_name = 'ZABAPGIT_FOOBAR'. ls_item-obj_name = 'ZABAPGIT_FOOBAR'.
@ -177,7 +152,6 @@ CLASS ltcl_object_types IMPLEMENTATION.
ENDCLASS. "ltcl_object_types IMPLEMENTATION ENDCLASS. "ltcl_object_types IMPLEMENTATION
*----------------------------------------------------------------------* *----------------------------------------------------------------------*
* CLASS ltcl_serialize DEFINITION * CLASS ltcl_serialize DEFINITION
*----------------------------------------------------------------------* *----------------------------------------------------------------------*