mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-02 13:03:01 +08:00
parent
29c45a7e7c
commit
d42bb98662
|
@ -31,6 +31,7 @@ CLASS zcl_abapgit_url DEFINITION
|
|||
VALUE(rv_path_name) TYPE string
|
||||
RAISING
|
||||
zcx_abapgit_exception .
|
||||
PROTECTED SECTION.
|
||||
PRIVATE SECTION.
|
||||
|
||||
CLASS-METHODS regex
|
||||
|
@ -59,8 +60,17 @@ CLASS ZCL_ABAPGIT_URL IMPLEMENTATION.
|
|||
|
||||
METHOD name.
|
||||
|
||||
DATA: lv_path TYPE string.
|
||||
|
||||
regex( EXPORTING iv_url = iv_url
|
||||
IMPORTING ev_name = rv_name ).
|
||||
IMPORTING ev_name = rv_name
|
||||
ev_path = lv_path ).
|
||||
|
||||
IF rv_name IS INITIAL.
|
||||
FIND REGEX '([\w-]+)/$' IN lv_path SUBMATCHES rv_name.
|
||||
ENDIF.
|
||||
|
||||
ASSERT NOT rv_name IS INITIAL.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
|
|
@ -6,6 +6,9 @@ CLASS ltcl_test DEFINITION FOR TESTING DURATION SHORT RISK LEVEL HARMLESS.
|
|||
repo_host FOR TESTING RAISING zcx_abapgit_exception,
|
||||
repo_name1 FOR TESTING RAISING zcx_abapgit_exception,
|
||||
repo_name2 FOR TESTING RAISING zcx_abapgit_exception,
|
||||
repo_name3 FOR TESTING RAISING zcx_abapgit_exception,
|
||||
repo_name4 FOR TESTING RAISING zcx_abapgit_exception,
|
||||
repo_name5 FOR TESTING RAISING zcx_abapgit_exception,
|
||||
repo_error FOR TESTING.
|
||||
|
||||
ENDCLASS.
|
||||
|
@ -59,4 +62,40 @@ CLASS ltcl_test IMPLEMENTATION.
|
|||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD repo_name3.
|
||||
|
||||
DATA: lv_name TYPE string.
|
||||
|
||||
lv_name = zcl_abapgit_url=>name( 'https://github.com/larshp/Foobar/' ).
|
||||
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = 'Foobar'
|
||||
act = lv_name ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD repo_name4.
|
||||
|
||||
DATA: lv_name TYPE string.
|
||||
|
||||
lv_name = zcl_abapgit_url=>name( 'https://github.com/larshp/foo-bar/' ).
|
||||
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = 'foo-bar'
|
||||
act = lv_name ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD repo_name5.
|
||||
|
||||
DATA: lv_name TYPE string.
|
||||
|
||||
lv_name = zcl_abapgit_url=>name( 'https://github.com/larshp/foo_bar/' ).
|
||||
|
||||
cl_abap_unit_assert=>assert_equals(
|
||||
exp = 'foo_bar'
|
||||
act = lv_name ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
ENDCLASS.
|
||||
|
|
Loading…
Reference in New Issue
Block a user