abapGit/src/objects/sap/zcl_abapgit_sap_namespace.clas.testclasses.abap
Frank Müller b80995467b
Replace RS_NAME_SPLIT_NAMESPACE in TADIR class (#6443)
Co-authored-by: Lars Hvam <larshp@hotmail.com>
Co-authored-by: Marc Bernard <59966492+mbtools@users.noreply.github.com>
2023-08-30 17:01:18 +02:00

109 lines
3.3 KiB
ABAP

CLASS ltcl_check_split_by_name DEFINITION FOR TESTING RISK LEVEL HARMLESS DURATION SHORT FINAL.
PRIVATE SECTION.
METHODS check_with_namespace FOR TESTING RAISING zcx_abapgit_exception.
METHODS check_without_namespace FOR TESTING RAISING zcx_abapgit_exception.
METHODS check_exc_starts_with_slash FOR TESTING RAISING zcx_abapgit_exception.
METHODS check_exc_slash_in_name_w_ns FOR TESTING RAISING zcx_abapgit_exception.
METHODS check_exc_slash_in_name_wo_ns FOR TESTING RAISING zcx_abapgit_exception.
ENDCLASS.
CLASS ltcl_check_split_by_name IMPLEMENTATION.
METHOD check_with_namespace.
DATA lv_obj_with_namespace TYPE tadir-obj_name.
DATA ls_obj_with_namespace TYPE zif_abapgit_definitions=>ty_obj_namespace.
DATA lr_ex TYPE REF TO zcx_abapgit_exception.
lv_obj_with_namespace = '/BLA12345/TEST/123'.
TRY.
ls_obj_with_namespace = zcl_abapgit_factory=>get_sap_namespace( )->split_by_name( lv_obj_with_namespace ).
CATCH zcx_abapgit_exception INTO lr_ex.
cl_abap_unit_assert=>fail( lr_ex->get_text( ) ).
ENDTRY.
cl_abap_unit_assert=>assert_equals(
act = ls_obj_with_namespace-namespace
exp = '/BLA12345/' ).
cl_abap_unit_assert=>assert_equals(
act = ls_obj_with_namespace-obj_without_namespace
exp = 'TEST/123' ).
ENDMETHOD.
METHOD check_without_namespace.
DATA lv_obj_with_namespace TYPE tadir-obj_name.
DATA ls_obj_with_namespace TYPE zif_abapgit_definitions=>ty_obj_namespace.
DATA lr_ex TYPE REF TO zcx_abapgit_exception.
lv_obj_with_namespace = 'ZCL_ABAPGIT_SAP_NAMESP'.
TRY.
ls_obj_with_namespace = zcl_abapgit_factory=>get_sap_namespace( )->split_by_name( lv_obj_with_namespace ).
CATCH zcx_abapgit_exception INTO lr_ex.
cl_abap_unit_assert=>fail( lr_ex->get_text( ) ).
ENDTRY.
cl_abap_unit_assert=>assert_equals(
act = ls_obj_with_namespace-namespace
exp = '' ).
cl_abap_unit_assert=>assert_equals(
act = ls_obj_with_namespace-obj_without_namespace
exp = 'ZCL_ABAPGIT_SAP_NAMESP' ).
ENDMETHOD.
METHOD check_exc_starts_with_slash.
DATA lv_obj_with_namespace TYPE tadir-obj_name.
lv_obj_with_namespace = '/TEST12345/BLA'.
TRY.
zcl_abapgit_factory=>get_sap_namespace( )->split_by_name( lv_obj_with_namespace ).
CATCH zcx_abapgit_exception.
RETURN.
ENDTRY.
cl_abap_unit_assert=>fail( 'No Exception raised' ).
ENDMETHOD.
METHOD check_exc_slash_in_name_w_ns.
DATA lv_obj_with_namespace TYPE tadir-obj_name.
lv_obj_with_namespace = '/TEST/TEST/TEST'.
TRY.
zcl_abapgit_factory=>get_sap_namespace( )->split_by_name(
iv_obj_with_namespace = lv_obj_with_namespace
iv_allow_slash_in_name = abap_false ).
CATCH zcx_abapgit_exception.
RETURN.
ENDTRY.
cl_abap_unit_assert=>fail( 'No Exception raised' ).
ENDMETHOD.
METHOD check_exc_slash_in_name_wo_ns.
DATA lv_obj_with_namespace TYPE tadir-obj_name.
lv_obj_with_namespace = 'TEST/TEST'.
TRY.
zcl_abapgit_factory=>get_sap_namespace( )->split_by_name(
iv_obj_with_namespace = lv_obj_with_namespace
iv_allow_slash_in_name = abap_false ).
CATCH zcx_abapgit_exception.
RETURN.
ENDTRY.
cl_abap_unit_assert=>fail( 'No Exception raised' ).
ENDMETHOD.
ENDCLASS.