diff --git a/src/objects/core/zcl_abapgit_objects_files.clas.abap b/src/objects/core/zcl_abapgit_objects_files.clas.abap index 767e8911f..2e9346212 100644 --- a/src/objects/core/zcl_abapgit_objects_files.clas.abap +++ b/src/objects/core/zcl_abapgit_objects_files.clas.abap @@ -278,6 +278,9 @@ CLASS zcl_abapgit_objects_files IMPLEMENTATION. METHOD get_file_pattern. rv_pattern = filename( iv_ext = '*' ). + " Escape special characters for use with 'covers pattern' (CP) + REPLACE ALL OCCURRENCES OF '#' IN rv_pattern WITH '##'. + REPLACE ALL OCCURRENCES OF '+' IN rv_pattern WITH '#+'. ENDMETHOD. diff --git a/src/objects/core/zcl_abapgit_objects_files.clas.testclasses.abap b/src/objects/core/zcl_abapgit_objects_files.clas.testclasses.abap index b85412124..2b2dcdc6b 100644 --- a/src/objects/core/zcl_abapgit_objects_files.clas.testclasses.abap +++ b/src/objects/core/zcl_abapgit_objects_files.clas.testclasses.abap @@ -125,10 +125,23 @@ CLASS ltcl_objects_files IMPLEMENTATION. METHOD get_file_pattern. + DATA ls_item TYPE zif_abapgit_definitions=>ty_item. + cl_abap_unit_assert=>assert_equals( exp = 'zlf.prog.*' act = mo_cut->get_file_pattern( ) ). + ls_item-obj_type = 'prog'. + ls_item-obj_name = '/test/zlf'. + + CREATE OBJECT mo_cut + EXPORTING + is_item = ls_item. + + cl_abap_unit_assert=>assert_equals( + exp = '##test##zlf.prog.*' + act = mo_cut->get_file_pattern( ) ). + ENDMETHOD. ENDCLASS.