Merge branch 'main' into mbtools/extended_check_8

This commit is contained in:
Lars Hvam 2024-12-05 17:53:42 +01:00 committed by GitHub
commit a30fe50818
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
55 changed files with 318 additions and 219 deletions

View File

@ -178,7 +178,7 @@ CLASS zcl_abapgit_apack_migration IMPLEMENTATION.
component_error = 4
no_access = 5
other = 6
OTHERS = 7.
OTHERS = 7 ##FM_SUBRC_OK.
CATCH cx_sy_dyn_call_param_not_found.
CALL FUNCTION 'SEO_INTERFACE_CREATE_COMPLETE'
EXPORTING

View File

@ -623,7 +623,7 @@ CLASS zcl_abapgit_cts_api IMPLEMENTATION.
ev_object = ls_list-object
ev_obj_name = ls_list-obj_name ).
INSERT ls_list INTO TABLE rt_list.
CATCH zcx_abapgit_exception.
CATCH zcx_abapgit_exception ##NO_HANDLER.
ENDTRY.
ENDCASE.
ENDLOOP.

View File

@ -49,7 +49,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_DATA_UTILS IMPLEMENTATION.
CLASS zcl_abapgit_data_utils IMPLEMENTATION.
METHOD build_config_filename.
@ -196,7 +196,7 @@ CLASS ZCL_ABAPGIT_DATA_UTILS IMPLEMENTATION.
db_not_exists = 3
no_permission = 4
no_change_allowed = 5
table_is_gtt = 6
* table_is_gtt = 6 " not in lower releases
OTHERS = 7.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise( |Table { is_item-obj_name } cannot be displayed| ).

View File

@ -77,10 +77,12 @@ CLASS ltcl_abap_language_version DEFINITION FOR TESTING RISK LEVEL HARMLESS
PRIVATE SECTION.
" Cloud package hardcoded in cl_abap_language_version
CONSTANTS c_cloud_package TYPE devclass VALUE 'TEST_LANGUAGE_VERSION_SCP'.
CONSTANTS c_language_cfg TYPE seoclsname VALUE 'CL_ABAP_LANGUAGE_VERSION_CFG'.
DATA:
mt_versions TYPE string_table,
mv_has_cloud_package TYPE abap_bool,
mv_has_language_cfg TYPE abap_bool,
mo_environment TYPE REF TO lcl_environment,
mi_persistency TYPE REF TO zif_abapgit_persist_settings,
mo_dot_abapgit TYPE REF TO zcl_abapgit_dot_abapgit,
@ -364,9 +366,11 @@ CLASS ltcl_abap_language_version IMPLEMENTATION.
" Assume on-prem (no cloud)
set_environment( abap_false ).
cl_abap_unit_assert=>assert_equals(
act = mo_cut->is_import_allowed( '$TMP' ) " existing standard package
exp = iv_standard ).
IF mv_has_language_cfg = abap_true.
cl_abap_unit_assert=>assert_equals(
act = mo_cut->is_import_allowed( '$TMP' ) " existing standard package
exp = iv_standard ).
ENDIF.
IF mv_has_cloud_package = abap_true.
cl_abap_unit_assert=>assert_equals(
@ -381,9 +385,11 @@ CLASS ltcl_abap_language_version IMPLEMENTATION.
" Assume cloud platform
set_environment( abap_true ).
cl_abap_unit_assert=>assert_equals(
act = mo_cut->is_import_allowed( '$TMP' ) " existing standard package
exp = iv_standard ).
IF mv_has_language_cfg = abap_true.
cl_abap_unit_assert=>assert_equals(
act = mo_cut->is_import_allowed( '$TMP' ) " existing standard package
exp = iv_standard ).
ENDIF.
IF mv_has_cloud_package = abap_true.
cl_abap_unit_assert=>assert_equals(
@ -401,6 +407,19 @@ CLASS ltcl_abap_language_version IMPLEMENTATION.
METHOD is_import_allowed.
DATA lv_version TYPE string.
DATA ls_clskey TYPE seoclskey.
ls_clskey-clsname = c_language_cfg.
" Tests using ABAP language version "standard" only work if the required
" SAP class is available. In older releases, all packages will have
" ABAP language version "undefined" and are handled like a new package
CALL FUNCTION 'SEO_CLASS_EXISTENCE_CHECK'
EXPORTING
clskey = ls_clskey
EXCEPTIONS
OTHERS = 1.
mv_has_language_cfg = boolc( sy-subrc = 0 ).
LOOP AT mt_versions INTO lv_version.

View File

@ -50,7 +50,7 @@ CLASS zcl_abapgit_pr_enumerator IMPLEMENTATION.
mv_repo_url = to_lower( iv_url ).
TRY.
mi_enum_provider = create_provider( mv_repo_url ).
CATCH zcx_abapgit_exception.
CATCH zcx_abapgit_exception ##NO_HANDLER.
ENDTRY.
ENDMETHOD.

View File

@ -124,7 +124,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_WHERE_USED_TOOLS IMPLEMENTATION.
CLASS zcl_abapgit_where_used_tools IMPLEMENTATION.
METHOD build_package_scope.
@ -311,7 +311,7 @@ CLASS ZCL_ABAPGIT_WHERE_USED_TOOLS IMPLEMENTATION.
not_enough_input = 1
no_function_pool = 2
delimiter_wrong_position = 3
OTHERS = 4.
OTHERS = 4 ##FM_SUBRC_OK.
IF lv_area IS INITIAL.
SELECT SINGLE master FROM d010inc INTO lv_program
@ -325,7 +325,7 @@ CLASS ZCL_ABAPGIT_WHERE_USED_TOOLS IMPLEMENTATION.
not_enough_input = 1
no_function_pool = 2
delimiter_wrong_position = 3
OTHERS = 4.
OTHERS = 4 ##FM_SUBRC_OK.
ENDIF.
IF lv_area IS NOT INITIAL.

View File

@ -61,7 +61,7 @@ CLASS zcl_abapgit_dependencies IMPLEMENTATION.
INSERT ls_ddls_name INTO TABLE lt_ddls_name.
PERFORM ('DDLS_GET_DEP') IN PROGRAM ('RADMASDL')
TABLES lt_ddls_name rt_dependency.
TABLES lt_ddls_name rt_dependency ##PERF_NO_FORM.
ENDMETHOD.
@ -119,7 +119,7 @@ CLASS zcl_abapgit_dependencies IMPLEMENTATION.
" AUTH after DCLS
<ls_tadir>-korrnum = '715000'.
WHEN 'SUSH'.
" SUSH after SUSC
" SUSH after SUSC and SRVB
<ls_tadir>-korrnum = '712000'.
WHEN 'SUSC'.
" SUSC after SUSO
@ -130,6 +130,14 @@ CLASS zcl_abapgit_dependencies IMPLEMENTATION.
WHEN 'DCLS'.
" AUTH and SUSO after DCLS
<ls_tadir>-korrnum = '705000'.
WHEN 'G4BA' OR 'G4BS' OR 'IWMO' OR 'IWSV' OR 'IWVB'.
" after SRVB
<ls_tadir>-korrnum = '610000'.
WHEN 'SRVB'.
" after SRVD
<ls_tadir>-korrnum = '600500'.
WHEN 'SRVD'.
<ls_tadir>-korrnum = '600000'.
WHEN 'IASP'.
<ls_tadir>-korrnum = '552000'.
WHEN 'IARP'.

View File

@ -245,6 +245,12 @@ CLASS zcl_abapgit_file_deserialize IMPLEMENTATION.
WHEN 'ENSC'.
lt_requires = lt_items.
DELETE lt_requires WHERE obj_type <> 'ENHS'.
WHEN 'IWMO' OR 'IWSV' OR 'IWVB' OR 'SUSH'.
lt_requires = lt_items.
DELETE lt_requires WHERE obj_type <> 'SRVB'.
WHEN 'SRVB'.
lt_requires = lt_items.
DELETE lt_requires WHERE obj_type <> 'SRVD'.
ENDCASE.
* TODO: END extract to object handler method

View File

@ -310,7 +310,7 @@ CLASS zcl_abapgit_objects_activation IMPLEMENTATION.
excecution_error = 1
cancelled = 2
insert_into_corr_error = 3
OTHERS = 4 ##SUBRC_OK.
OTHERS = 4 ##FM_SUBRC_OK.
CATCH cx_sy_dyn_call_param_not_found.
CALL FUNCTION 'RS_WORKING_OBJECTS_ACTIVATE'
EXPORTING
@ -324,7 +324,7 @@ CLASS zcl_abapgit_objects_activation IMPLEMENTATION.
excecution_error = 1
cancelled = 2
insert_into_corr_error = 3
OTHERS = 4 ##SUBRC_OK.
OTHERS = 4 ##FM_SUBRC_OK.
ENDTRY.
CASE sy-subrc.
WHEN 1 OR 3 OR 4.

View File

@ -66,7 +66,7 @@ CLASS zcl_abapgit_ecatt_helper IMPLEMENTATION.
lv_text = lx_ecatt->get_text( ).
zcx_abapgit_exception=>raise( lv_text ).
" note, exception cx_ecatt_ui_attachment doesn't exist in 702
CATCH cx_ecatt.
CATCH cx_ecatt ##NO_HANDLER.
"will never be raised from download, when called with mv_generate_xml_no_download = 'X'.
ENDTRY.

View File

@ -25,7 +25,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_ECATT_SP_DOWNLOAD IMPLEMENTATION.
CLASS zcl_abapgit_ecatt_sp_download IMPLEMENTATION.
METHOD download.
@ -93,7 +93,7 @@ CLASS ZCL_ABAPGIT_ECATT_SP_DOWNLOAD IMPLEMENTATION.
CALL METHOD lo_ecatt_sp->('GET_SP_ATTRIBUTES')
IMPORTING
e_sp_xml = lv_sp_xml.
CATCH cx_ecatt_apl.
CATCH cx_ecatt_apl ##NO_HANDLER.
ENDTRY.
CALL FUNCTION 'SDIXML_XML_TO_DOM'

View File

@ -27,7 +27,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_ECATT_SP_UPLOAD IMPLEMENTATION.
CLASS zcl_abapgit_ecatt_sp_upload IMPLEMENTATION.
METHOD get_ecatt_sp.
@ -129,7 +129,6 @@ CLASS ZCL_ABAPGIT_ECATT_SP_UPLOAD IMPLEMENTATION.
ENDTRY.
ASSIGN ecatt_object TO <lg_ecatt_sp>.
ASSERT sy-subrc = 0.
lo_ecatt_sp = <lg_ecatt_sp>.
@ -162,13 +161,12 @@ CLASS ZCL_ABAPGIT_ECATT_SP_UPLOAD IMPLEMENTATION.
CATCH cx_ecatt_apl INTO lx_ecatt.
lv_exc_occ = 'X'.
ENDTRY.
* Devesh,C5129871 18.07.2011 Releasing enqueue after uploading
*begin
" Releasing enqueue after uploading
TRY.
ecatt_object->close_object( im_suppress_events = 'X' ).
CATCH cx_ecatt_apl INTO lx_ecatt.
CATCH cx_ecatt_apl INTO lx_ecatt ##NO_HANDLER.
ENDTRY.
*end
* get devclass from existing object
TRY.
cl_apl_ecatt_object=>get_tadir_entry(

View File

@ -62,7 +62,7 @@ CLASS zcl_abapgit_object_enho_clif IMPLEMENTATION.
TRY.
io_clif->add_change_enha_type( type_line = ls_type_line ).
CATCH cx_enh_mod_not_allowed
cx_enh_is_not_enhanceable.
cx_enh_is_not_enhanceable ##NO_HANDLER.
" TODO
ENDTRY.
ENDLOOP.

View File

@ -611,7 +611,7 @@ CLASS zcl_abapgit_oo_class IMPLEMENTATION.
component_error = 4
no_access = 5
other = 6
OTHERS = 7.
OTHERS = 7 ##FM_SUBRC_OK.
CATCH cx_sy_dyn_call_param_not_found.
CALL FUNCTION 'SEO_CLASS_CREATE_COMPLETE'
EXPORTING
@ -628,7 +628,7 @@ CLASS zcl_abapgit_oo_class IMPLEMENTATION.
component_error = 4
no_access = 5
other = 6
OTHERS = 7.
OTHERS = 7 ##FM_SUBRC_OK.
ENDTRY.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise_t100( ).
@ -998,5 +998,4 @@ CLASS zcl_abapgit_oo_class IMPLEMENTATION.
zcx_abapgit_exception=>raise( |Class { ls_clskey-clsname } has syntax errors | ).
ENDIF.
ENDMETHOD.
ENDCLASS.

View File

@ -212,7 +212,7 @@ CLASS zcl_abapgit_oo_interface IMPLEMENTATION.
component_error = 4
no_access = 5
other = 6
OTHERS = 7.
OTHERS = 7 ##FM_SUBRC_OK.
CATCH cx_sy_dyn_call_param_not_found.
CALL FUNCTION 'SEO_INTERFACE_CREATE_COMPLETE'
EXPORTING
@ -229,7 +229,7 @@ CLASS zcl_abapgit_oo_interface IMPLEMENTATION.
component_error = 4
no_access = 5
other = 6
OTHERS = 7.
OTHERS = 7 ##FM_SUBRC_OK.
ENDTRY.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise_t100( ).
@ -368,5 +368,4 @@ CLASS zcl_abapgit_oo_interface IMPLEMENTATION.
zcx_abapgit_exception=>raise( |Interface { ls_intkey-clsname } has syntax errors | ).
ENDIF.
ENDMETHOD.
ENDCLASS.

View File

@ -151,7 +151,7 @@ CLASS zcl_abapgit_oo_serializer IMPLEMENTATION.
lv_program = ls_include.
TRY.
lt_source = zcl_abapgit_factory=>get_sap_report( )->read_report( lv_program ).
CATCH zcx_abapgit_exception.
CATCH zcx_abapgit_exception ##NO_HANDLER.
* ignore if the report is not found, sometimes the CCDEF include does not exist
ENDTRY.
rt_source = lt_source.

View File

@ -37,10 +37,7 @@ CLASS ltcl_field_rules DEFINITION FOR TESTING RISK LEVEL HARMLESS
RETURNING
VALUE(ri_rules) TYPE REF TO zif_abapgit_field_rules,
apply_clear_logic FOR TESTING,
apply_fill_logic FOR TESTING,
get_utc_timestamp
RETURNING
VALUE(rv_timestamp) TYPE timestamp.
apply_fill_logic FOR TESTING.
ENDCLASS.
@ -88,7 +85,7 @@ CLASS ltcl_field_rules IMPLEMENTATION.
METHOD fill3.
DATA lv_timestamp TYPE timestamp.
lv_timestamp = get_utc_timestamp( ).
GET TIME STAMP FIELD lv_timestamp.
fill_value(
iv_rule = zif_abapgit_field_rules=>c_fill_rule-timestamp
iv_len = 10
@ -205,6 +202,8 @@ CLASS ltcl_field_rules IMPLEMENTATION.
lv_ts TYPE string,
lv_timestamp TYPE timestamp.
GET TIME STAMP FIELD lv_timestamp.
ls_act-key = 1.
INSERT ls_act INTO TABLE lt_act.
ls_act-key = 2.
@ -241,17 +240,16 @@ CLASS ltcl_field_rules IMPLEMENTATION.
act = ls_act-time(4)
exp = sy-uzeit(4) ). " avoid comparing seconds
lv_timestamp = get_utc_timestamp( ).
lv_ts = ls_act-ts.
lv_ts = lv_ts(12).
lv_ts = lv_ts(10).
cl_abap_unit_assert=>assert_equals(
act = lv_ts
exp = |{ lv_timestamp DIV 100 }| ). " avoid comparing second
exp = |{ lv_timestamp DIV 10000 }| ). " avoid comparing second
lv_ts = ls_act-tl.
lv_ts = lv_ts(12).
lv_ts = lv_ts(10).
cl_abap_unit_assert=>assert_equals(
act = lv_ts
exp = |{ lv_timestamp DIV 100 }| ). " avoid comparing seconds
exp = |{ lv_timestamp DIV 10000 }| ). " avoid comparing seconds
READ TABLE lt_act INTO ls_act INDEX 2.
@ -269,21 +267,4 @@ CLASS ltcl_field_rules IMPLEMENTATION.
exp = sy-uzeit(4) ). " avoid comparing seconds
ENDMETHOD.
METHOD get_utc_timestamp.
DATA lv_syst_timezone TYPE timezone.
CALL FUNCTION 'GET_SYSTEM_TIMEZONE'
IMPORTING
timezone = lv_syst_timezone
EXCEPTIONS
customizing_missing = 1
OTHERS = 2.
IF sy-subrc <> 0.
cl_abap_unit_assert=>fail( 'Could not get system timezone' ).
ENDIF.
CONVERT DATE sy-datum TIME sy-uzeit
INTO TIME STAMP rv_timestamp
TIME ZONE lv_syst_timezone.
ENDMETHOD.
ENDCLASS.

View File

@ -47,7 +47,7 @@ CLASS zcl_abapgit_sap_report IMPLEMENTATION.
no_show_permission = 7
permission_failure = 8
request_language_denied = 9
OTHERS = 10.
OTHERS = 10 ##FM_SUBRC_OK.
CATCH cx_sy_dyn_call_param_not_found.
CALL FUNCTION 'RS_ACCESS_PERMISSION'
EXPORTING
@ -67,7 +67,7 @@ CLASS zcl_abapgit_sap_report IMPLEMENTATION.
no_show_permission = 7
permission_failure = 8
request_language_denied = 9
OTHERS = 10.
OTHERS = 10 ##FM_SUBRC_OK.
ENDTRY.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise_t100( ).

View File

@ -103,7 +103,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_OBJECT_TABL_DDL IMPLEMENTATION.
CLASS zcl_abapgit_object_tabl_ddl IMPLEMENTATION.
METHOD deserialize.
@ -158,9 +158,9 @@ CLASS ZCL_ABAPGIT_OBJECT_TABL_DDL IMPLEMENTATION.
start TYPE i VALUE 0,
colon TYPE i VALUE 1,
type TYPE i VALUE 2,
aftertype TYPE i VALUE 2,
null TYPE i VALUE 2,
afternull TYPE i VALUE 2,
aftertype TYPE i VALUE 3,
null TYPE i VALUE 4,
afternull TYPE i VALUE 5,
END OF lc_mode.
DATA lv_field TYPE string.

View File

@ -383,7 +383,7 @@ CLASS zcl_abapgit_object_aifc IMPLEMENTATION.
packages = '' ).
CATCH cx_abap_not_a_table INTO lx_abap_not_a_table.
zcx_abapgit_exception=>raise_with_text( lx_abap_not_a_table ).
CATCH cx_abap_not_in_package.
CATCH cx_abap_not_in_package ##NO_HANDLER.
"that's fine
ENDTRY.

View File

@ -159,7 +159,7 @@ CLASS zcl_abapgit_object_auth IMPLEMENTATION.
CALL FUNCTION 'SU20_MAINTAIN_SNGL'
EXPORTING
id_field = mv_fieldname
id_wbo_mode = abap_false.
id_wbo_mode = abap_false ##EXISTS.
rv_exit = abap_true.
ENDIF.
ENDMETHOD.

View File

@ -38,6 +38,7 @@ CLASS zcl_abapgit_object_cmpt IMPLEMENTATION.
r_ref_db_access = mo_cmp_db.
CATCH cx_root.
zcx_abapgit_exception=>raise( 'CMPT not supported' ).
ENDTRY.
mv_name = ms_item-obj_name.

View File

@ -786,7 +786,8 @@ CLASS zcl_abapgit_object_fugr IMPLEMENTATION.
CHANGING
include = lv_include
EXCEPTIONS
OTHERS = 1.
OTHERS = 1 ##FM_SUBRC_OK.
IF lv_function_group(1) = 'X'. " "EXIT"-function-module
ls_tadir-object = 'FUGS'.
ENDIF.

View File

@ -53,8 +53,9 @@ CLASS zcl_abapgit_object_iext IMPLEMENTATION.
pe_attributes = ls_attributes
EXCEPTIONS
OTHERS = 1.
rv_user = ls_attributes-plast.
IF sy-subrc = 0.
rv_user = ls_attributes-plast.
ENDIF.
ENDMETHOD.

View File

@ -61,7 +61,7 @@ CLASS zcl_abapgit_object_iobj IMPLEMENTATION.
iobj_not_found = 1
illegal_input = 2
bct_comp_invalid = 3
not_authorized = 4
* not_authorized = 4 " not in lower releases
OTHERS = 5.
IF sy-subrc = 0.
ASSIGN COMPONENT 'TSTPNM' OF STRUCTURE <lg_viobj> TO <lg_tstpnm>.
@ -200,36 +200,67 @@ CLASS zcl_abapgit_object_iobj IMPLEMENTATION.
ASSERT sy-subrc = 0.
IF zif_abapgit_object~exists( ) = abap_false.
CALL FUNCTION 'BAPI_IOBJ_CREATE'
EXPORTING
details = <lg_details>
IMPORTING
return = ls_return
TABLES
compounds = <lt_compounds>
attributes = <lt_attributes>
navigationattributes = <lt_navigationattributes>
atrnavinfoprovider = <lt_atrnavinfoprovider>
hierarchycharacteristics = <lt_hierarchycharacteristics>
elimination = <lt_elimination>
hanafieldsmapping = <lt_hanafieldsmapping>
xxlattributes = <lt_xxlattributes>.
TRY.
CALL FUNCTION 'BAPI_IOBJ_CREATE'
EXPORTING
details = <lg_details>
IMPORTING
return = ls_return
TABLES
compounds = <lt_compounds>
attributes = <lt_attributes>
navigationattributes = <lt_navigationattributes>
atrnavinfoprovider = <lt_atrnavinfoprovider>
hierarchycharacteristics = <lt_hierarchycharacteristics>
elimination = <lt_elimination>
hanafieldsmapping = <lt_hanafieldsmapping>
xxlattributes = <lt_xxlattributes> ##ARG_OK.
CATCH cx_sy_dyn_call_param_not_found.
CALL FUNCTION 'BAPI_IOBJ_CREATE'
EXPORTING
details = <lg_details>
IMPORTING
return = ls_return
TABLES
compounds = <lt_compounds>
attributes = <lt_attributes>
navigationattributes = <lt_navigationattributes>
atrnavinfoprovider = <lt_atrnavinfoprovider>
hierarchycharacteristics = <lt_hierarchycharacteristics>
elimination = <lt_elimination>.
ENDTRY.
ELSE.
CALL FUNCTION 'BAPI_IOBJ_CHANGE'
EXPORTING
infoobject = <lg_infoobject>
details = <lg_details>
IMPORTING
return = ls_return
TABLES
compounds = <lt_compounds>
attributes = <lt_attributes>
navigationattributes = <lt_navigationattributes>
atrnavinfoprovider = <lt_atrnavinfoprovider>
hierarchycharacteristics = <lt_hierarchycharacteristics>
elimination = <lt_elimination>
hanafieldsmapping = <lt_hanafieldsmapping>
xxlattributes = <lt_xxlattributes>.
TRY.
CALL FUNCTION 'BAPI_IOBJ_CHANGE'
EXPORTING
infoobject = <lg_infoobject>
details = <lg_details>
IMPORTING
return = ls_return
TABLES
compounds = <lt_compounds>
attributes = <lt_attributes>
navigationattributes = <lt_navigationattributes>
atrnavinfoprovider = <lt_atrnavinfoprovider>
hierarchycharacteristics = <lt_hierarchycharacteristics>
elimination = <lt_elimination>
hanafieldsmapping = <lt_hanafieldsmapping>
xxlattributes = <lt_xxlattributes> ##ARG_OK.
CATCH cx_sy_dyn_call_param_not_found.
CALL FUNCTION 'BAPI_IOBJ_CHANGE'
EXPORTING
infoobject = <lg_infoobject>
details = <lg_details>
IMPORTING
return = ls_return
TABLES
compounds = <lt_compounds>
attributes = <lt_attributes>
navigationattributes = <lt_navigationattributes>
atrnavinfoprovider = <lt_atrnavinfoprovider>
hierarchycharacteristics = <lt_hierarchycharacteristics>
elimination = <lt_elimination>.
ENDTRY.
ENDIF.
IF ls_return-type = 'E'.
@ -409,21 +440,37 @@ CLASS zcl_abapgit_object_iobj IMPLEMENTATION.
lv_iobjnam = ms_item-obj_name.
CALL FUNCTION 'BAPI_IOBJ_GETDETAIL'
EXPORTING
infoobject = lv_iobjnam
IMPORTING
details = <lg_details>
return = ls_return
TABLES
compounds = <lt_compounds>
attributes = <lt_attributes>
navigationattributes = <lt_navigationattributes>
atrnavinfoprovider = <lt_atrnavinfoprovider>
hierarchycharacteristics = <lt_hierarchycharacteristics>
elimination = <lt_elimination>
hanafieldsmapping = <lt_hanafieldsmapping>
xxlattributes = <lt_xxlattributes>.
TRY.
CALL FUNCTION 'BAPI_IOBJ_GETDETAIL'
EXPORTING
infoobject = lv_iobjnam
IMPORTING
details = <lg_details>
return = ls_return
TABLES
compounds = <lt_compounds>
attributes = <lt_attributes>
navigationattributes = <lt_navigationattributes>
atrnavinfoprovider = <lt_atrnavinfoprovider>
hierarchycharacteristics = <lt_hierarchycharacteristics>
elimination = <lt_elimination>
hanafieldsmapping = <lt_hanafieldsmapping>
xxlattributes = <lt_xxlattributes> ##ARG_OK.
CATCH cx_sy_dyn_call_param_not_found.
CALL FUNCTION 'BAPI_IOBJ_GETDETAIL'
EXPORTING
infoobject = lv_iobjnam
IMPORTING
details = <lg_details>
return = ls_return
TABLES
compounds = <lt_compounds>
attributes = <lt_attributes>
navigationattributes = <lt_navigationattributes>
atrnavinfoprovider = <lt_atrnavinfoprovider>
hierarchycharacteristics = <lt_hierarchycharacteristics>
elimination = <lt_elimination>.
ENDTRY.
IF ls_return-type = 'E'.
zcx_abapgit_exception=>raise( |Error getting details of InfoObject: { ls_return-message }| ).

View File

@ -37,13 +37,17 @@ CLASS zcl_abapgit_object_msag DEFINITION PUBLIC INHERITING FROM zcl_abapgit_obje
zcx_abapgit_exception .
METHODS delete_msgid
IMPORTING
!iv_message_id TYPE arbgb .
!iv_message_id TYPE arbgb
RAISING
zcx_abapgit_exception.
METHODS free_access_permission
IMPORTING
!iv_message_id TYPE arbgb .
METHODS delete_documentation
IMPORTING
!iv_message_id TYPE arbgb .
!iv_message_id TYPE arbgb
RAISING
zcx_abapgit_exception.
ENDCLASS.
@ -61,9 +65,7 @@ CLASS zcl_abapgit_object_msag IMPLEMENTATION.
element = iv_message_id
addition = ' '
IMPORTING
object = lv_key_s
EXCEPTIONS
OTHERS = 0.
object = lv_key_s.
CALL FUNCTION 'DOKU_DELETE_ALL'
EXPORTING
@ -80,7 +82,11 @@ CLASS zcl_abapgit_object_msag IMPLEMENTATION.
no_docu_found = 4
object_is_already_enqueued = 5
object_is_enqueued_by_corr = 6
user_break = 7.
user_break = 7
OTHERS = 8.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise( 'Error deleting longtext for message' ).
ENDIF.
ENDMETHOD.

View File

@ -90,7 +90,7 @@ CLASS zcl_abapgit_object_oa2p IMPLEMENTATION.
"authority check
AUTHORITY-CHECK OBJECT 'S_OA2C_ADM'
ID 'ACTVT' FIELD lc_actvt.
ID 'ACTVT' FIELD lc_actvt ##AUTH_OBJ_OK.
IF sy-subrc <> 0.
MESSAGE e463(01) WITH mv_profile INTO zcx_abapgit_exception=>null.
zcx_abapgit_exception=>raise_t100( ).
@ -104,7 +104,7 @@ CLASS zcl_abapgit_object_oa2p IMPLEMENTATION.
CALL METHOD lo_persist->('IF_WB_OBJECT_PERSIST~DELETE')
EXPORTING
p_object_key = lv_profile_key. " Object Key
CATCH cx_swb_object_does_not_exist.
CATCH cx_swb_object_does_not_exist ##NO_HANDLER.
CATCH cx_swb_exception.
zcx_abapgit_exception=>raise( |Error when deleting OAuth2 Profile { lv_profile_key }.| ).
ENDTRY.

View File

@ -137,7 +137,7 @@ CLASS zcl_abapgit_object_otgr IMPLEMENTATION.
TRY.
CREATE DATA lo_parents TYPE TABLE OF ('CLS_TYGR_PARENT').
ASSIGN lo_parents->* TO <lt_parents>.
CATCH cx_sy_create_data_error.
CATCH cx_sy_create_data_error ##NO_HANDLER.
ENDTRY.
IF <lt_parents> IS ASSIGNED.
@ -288,7 +288,7 @@ CLASS zcl_abapgit_object_otgr IMPLEMENTATION.
TRY.
CREATE DATA lo_parents TYPE TABLE OF ('CLS_TYGR_PARENT').
ASSIGN lo_parents->* TO <lt_parents>.
CATCH cx_sy_create_data_error.
CATCH cx_sy_create_data_error ##NO_HANDLER.
ENDTRY.
TRY.

View File

@ -172,7 +172,7 @@ CLASS lcl_task_definition IMPLEMENTATION.
IF sy-subrc <> 0.
TRY.
li_container->element_remove( name = lv_element ).
CATCH cx_swf_cnt_container.
CATCH cx_swf_cnt_container ##NO_HANDLER.
"Shouldn't happen, doesn't matter if it does
ENDTRY.
ENDIF.

View File

@ -77,7 +77,7 @@ CLASS zcl_abapgit_object_pdxx_super IMPLEMENTATION.
enqueue_failed = 1
object_not_deleted = 2
object_not_found = 3
OTHERS = 4. "#EC SUBRC_OK
OTHERS = 4 ##FM_SUBRC_OK.
check_subrc_for( `RH_HRSOBJECT_DELETE` ).

View File

@ -486,7 +486,8 @@ CLASS zcl_abapgit_object_scp1 IMPLEMENTATION.
TABLES
texts = ls_scp1-scprtext
EXCEPTIONS
no_text_found = 1.
no_text_found = 1
OTHERS = 2 ##FM_SUBRC_OK.
IF ls_scp1-scprattr-type = 'TMP'.
load_hier( CHANGING cs_scp1 = ls_scp1 ).

View File

@ -134,7 +134,7 @@ CLASS zcl_abapgit_object_sfpf IMPLEMENTATION.
TRY.
rv_xstr = cl_fp_helper=>convert_form_to_xstring( li_fp_form ).
CATCH cx_fp_api INTO lx_fp_conv_err.
CATCH cx_fp_api INTO lx_fp_conv_err ##NO_HANDLER.
" Pass - the exception is handled below!
ENDTRY.

View File

@ -129,6 +129,18 @@ CLASS zcl_abapgit_object_srvb IMPLEMENTATION.
CHANGING
cs_service_binding = cs_service_binding ).
clear_field(
EXPORTING
iv_fieldname = 'METADATA-RESPONSIBLE'
CHANGING
cs_service_binding = cs_service_binding ).
clear_field(
EXPORTING
iv_fieldname = 'METADATA-MASTER_LANGUAGE'
CHANGING
cs_service_binding = cs_service_binding ).
ENDMETHOD.

View File

@ -569,7 +569,7 @@ CLASS zcl_abapgit_object_ueno IMPLEMENTATION.
header = ls_docu-header
content = ls_docu-content
itf = ls_docu-itf
pstatus = lv_error_status.
pstatus = lv_error_status ##ARG_OK.
CHECK lv_error_status = 'S'. "Success

View File

@ -303,7 +303,7 @@ CLASS zcl_abapgit_object_wdca IMPLEMENTATION.
WHERE config_id = ls_outline-config_id
AND config_type = ls_outline-config_type
AND config_var = ls_outline-config_var.
CATCH zcx_abapgit_exception.
CATCH zcx_abapgit_exception ##NO_HANDLER.
" File not found
ENDTRY.

View File

@ -100,7 +100,7 @@ CLASS zcl_abapgit_object_xinx IMPLEMENTATION.
suppress_transport = 'X'
EXCEPTIONS
no_docu_found = 1
OTHERS = 2.
OTHERS = 2 ##FM_SUBRC_OK.
ENDMETHOD.
@ -317,6 +317,9 @@ CLASS zcl_abapgit_object_xinx IMPLEMENTATION.
EXCEPTIONS
illegal_input = 1
OTHERS = 2.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise( 'Error reading index' ).
ENDIF.
rv_bool = boolc( ls_dd12v IS NOT INITIAL ).

View File

@ -650,7 +650,7 @@ CLASS zcl_abapgit_objects_program IMPLEMENTATION.
cancelled = 2
name_not_allowed = 3
permission_error = 4
OTHERS = 5.
OTHERS = 5 ##FM_SUBRC_OK.
CATCH cx_sy_dyn_call_param_not_found.
CALL FUNCTION 'RPY_PROGRAM_INSERT'
EXPORTING
@ -667,7 +667,7 @@ CLASS zcl_abapgit_objects_program IMPLEMENTATION.
cancelled = 2
name_not_allowed = 3
permission_error = 4
OTHERS = 5.
OTHERS = 5 ##FM_SUBRC_OK.
ENDTRY.
IF sy-subrc = 3.

View File

@ -191,7 +191,7 @@ CLASS zcl_abapgit_objects_super IMPLEMENTATION.
object_not_specified = 3
permission_failure = 4
dialog_needed = 5
OTHERS = 6.
OTHERS = 6 ##FM_SUBRC_OK.
CATCH cx_sy_dyn_call_param_not_found.
TRY.
" try to force deletion for APPENDs
@ -207,7 +207,7 @@ CLASS zcl_abapgit_objects_super IMPLEMENTATION.
object_not_specified = 3
permission_failure = 4
dialog_needed = 5
OTHERS = 6.
OTHERS = 6 ##FM_SUBRC_OK.
CATCH cx_sy_dyn_call_param_not_found.
" no_ask_delete_append and aie_force_deletion not available in lower releases
CALL FUNCTION 'RS_DD_DELETE_OBJ'
@ -221,7 +221,7 @@ CLASS zcl_abapgit_objects_super IMPLEMENTATION.
object_not_specified = 3
permission_failure = 4
dialog_needed = 5
OTHERS = 6.
OTHERS = 6 ##FM_SUBRC_OK.
ENDTRY.
ENDTRY.

View File

@ -53,7 +53,7 @@ CLASS zcl_abapgit_persist_migrate IMPLEMENTATION.
TRY.
lcl_cua_interface=>new( )->put_own_cua( ls_cua ).
CATCH zcx_abapgit_exception.
CATCH zcx_abapgit_exception ##NO_HANDLER.
ENDTRY.
ENDMETHOD.
@ -70,7 +70,7 @@ CLASS zcl_abapgit_persist_migrate IMPLEMENTATION.
TRY.
ls_own_cua = lcl_cua_interface=>new( )->get_own_cua( ).
CATCH zcx_abapgit_exception.
CATCH zcx_abapgit_exception ##NO_HANDLER.
ENDTRY.
IF ls_own_cua IS INITIAL.

View File

@ -136,7 +136,7 @@ CLASS zcl_abapgit_repo_labels IMPLEMENTATION.
TRY.
validate_one_label_color( <ls_c> ).
APPEND <ls_c> TO lt_normalized.
CATCH zcx_abapgit_exception.
CATCH zcx_abapgit_exception ##NO_HANDLER.
ENDTRY.
ENDLOOP.
@ -225,7 +225,7 @@ CLASS zcl_abapgit_repo_labels IMPLEMENTATION.
ro_map->set(
iv_key = <ls_c>-label
iv_val = <ls_c>-color ).
CATCH zcx_abapgit_exception.
CATCH zcx_abapgit_exception ##NO_HANDLER.
ENDTRY.
ENDLOOP.

View File

@ -115,7 +115,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_GUI IMPLEMENTATION.
CLASS zcl_abapgit_gui IMPLEMENTATION.
METHOD back.
@ -373,7 +373,7 @@ CLASS ZCL_ABAPGIT_GUI IMPLEMENTATION.
li_modal ?= ii_page.
rv_yes = li_modal->is_modal( ).
ENDIF.
CATCH cx_sy_move_cast_error.
CATCH cx_sy_move_cast_error ##NO_HANDLER.
ENDTRY.
ENDMETHOD.

View File

@ -146,6 +146,7 @@ CLASS zcl_abapgit_exception_viewer IMPLEMENTATION.
METHOD goto_message.
DATA: lv_msg TYPE c LENGTH 100.
DATA: lt_bdcdata TYPE STANDARD TABLE OF bdcdata,
ls_bdcdata LIKE LINE OF lt_bdcdata.
@ -177,17 +178,18 @@ CLASS zcl_abapgit_exception_viewer IMPLEMENTATION.
CALL FUNCTION 'ABAP4_CALL_TRANSACTION'
STARTING NEW TASK 'GIT'
EXPORTING
tcode = 'SE91'
mode_val = 'E'
tcode = 'SE91'
mode_val = 'E'
TABLES
using_tab = lt_bdcdata
using_tab = lt_bdcdata
EXCEPTIONS
call_transaction_denied = 1
tcode_invalid = 2
OTHERS = 3.
system_failure = 1 MESSAGE lv_msg
communication_failure = 2 MESSAGE lv_msg
resource_failure = 3
OTHERS = 4.
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise_t100( ).
zcx_abapgit_exception=>raise( lv_msg ).
ENDIF.
ENDMETHOD.

View File

@ -243,7 +243,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_GUI_CHUNK_LIB IMPLEMENTATION.
CLASS zcl_abapgit_gui_chunk_lib IMPLEMENTATION.
METHOD class_constructor.
@ -261,7 +261,7 @@ CLASS ZCL_ABAPGIT_GUI_CHUNK_LIB IMPLEMENTATION.
timezone = gv_time_zone
EXCEPTIONS
customizing_missing = 1
OTHERS = 2.
OTHERS = 2 ##FM_SUBRC_OK.
ENDTRY.
ENDMETHOD.

View File

@ -54,7 +54,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_GUI_PAGE_HOC IMPLEMENTATION.
CLASS zcl_abapgit_gui_page_hoc IMPLEMENTATION.
METHOD constructor.
@ -96,14 +96,14 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_HOC IMPLEMENTATION.
IF ls_control-page_menu_provider IS NOT BOUND. " try component itself
TRY.
ls_control-page_menu_provider ?= ii_child_component.
CATCH cx_sy_move_cast_error.
CATCH cx_sy_move_cast_error ##NO_HANDLER.
ENDTRY.
ENDIF.
IF ls_control-page_title_provider IS NOT BOUND. " try component itself
TRY.
ls_control-page_title_provider ?= ii_child_component.
CATCH cx_sy_move_cast_error.
CATCH cx_sy_move_cast_error ##NO_HANDLER.
ENDTRY.
ENDIF.
@ -132,7 +132,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_HOC IMPLEMENTATION.
TRY.
li_modal ?= mi_child.
rv_is_modal = li_modal->is_modal( ).
CATCH cx_sy_move_cast_error.
CATCH cx_sy_move_cast_error ##NO_HANDLER.
ENDTRY.
ENDMETHOD.
@ -141,7 +141,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_HOC IMPLEMENTATION.
METHOD detect_title_provider.
TRY.
ri_ref ?= mi_child.
CATCH cx_sy_move_cast_error.
CATCH cx_sy_move_cast_error ##NO_HANDLER.
ENDTRY.
ENDMETHOD.

View File

@ -127,7 +127,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_GUI_PAGE_CODI_BASE IMPLEMENTATION.
CLASS zcl_abapgit_gui_page_codi_base IMPLEMENTATION.
METHOD apply_filter_kind.
@ -256,7 +256,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_CODI_BASE IMPLEMENTATION.
ENDIF.
ENDCASE.
CATCH cx_root.
CATCH cx_root ##NO_HANDLER.
" leave empty, fallback to default, defined elsewhere
ENDTRY.
@ -340,7 +340,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_CODI_BASE IMPLEMENTATION.
RETURN.
ENDIF.
CATCH zcx_abapgit_exception.
CATCH zcx_abapgit_exception ##NO_HANDLER.
ENDTRY.
TRY.

View File

@ -317,7 +317,7 @@ CLASS zcl_abapgit_gui_page_sett_pers IMPLEMENTATION.
lo_colors->set(
iv_key = lv_l
iv_val = lv_l ).
CATCH zcx_abapgit_exception.
CATCH zcx_abapgit_exception ##NO_HANDLER.
ENDTRY.
ENDLOOP.

View File

@ -137,7 +137,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_GUI_PAGE_STAGE IMPLEMENTATION.
CLASS zcl_abapgit_gui_page_stage IMPLEMENTATION.
METHOD check_selected.
@ -281,7 +281,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_STAGE IMPLEMENTATION.
es_item = ls_item ).
ls_changed_by-item = ls_item.
INSERT ls_changed_by INTO TABLE lt_changed_by_remote.
CATCH zcx_abapgit_exception.
CATCH zcx_abapgit_exception ##NO_HANDLER.
ENDTRY.
ENDLOOP.
@ -348,7 +348,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_STAGE IMPLEMENTATION.
rt_transports = li_cts_api->get_transports_for_list( lt_items ).
CATCH zcx_abapgit_exception.
CATCH zcx_abapgit_exception ##NO_HANDLER.
ENDTRY.
ENDMETHOD.

View File

@ -22,6 +22,7 @@ CLASS zcl_abapgit_popup_branch_list DEFINITION
!iv_default_branch TYPE string OPTIONAL
!iv_show_new_option TYPE abap_bool DEFAULT abap_false.
PROTECTED SECTION.
PRIVATE SECTION.
DATA mv_repo_url TYPE string.
@ -41,15 +42,6 @@ ENDCLASS.
CLASS zcl_abapgit_popup_branch_list IMPLEMENTATION.
METHOD create.
CREATE OBJECT ri_popup TYPE zcl_abapgit_popup_branch_list
EXPORTING
iv_url = iv_url
iv_default_branch = iv_default_branch
iv_show_new_option = iv_show_new_option.
ENDMETHOD.
METHOD constructor.
mv_repo_url = iv_url.
mv_default_branch = zif_abapgit_git_definitions=>c_git_branch-heads_prefix && iv_default_branch.
@ -57,14 +49,12 @@ CLASS zcl_abapgit_popup_branch_list IMPLEMENTATION.
ENDMETHOD.
METHOD zif_abapgit_html_popup~create_picklist.
CREATE OBJECT ro_picklist
METHOD create.
CREATE OBJECT ri_popup TYPE zcl_abapgit_popup_branch_list
EXPORTING
iv_title = 'Choose Branch'
it_list = fetch_branch_list( )
ii_item_renderer = me.
iv_url = iv_url
iv_default_branch = iv_default_branch
iv_show_new_option = iv_show_new_option.
ENDMETHOD.
@ -109,7 +99,6 @@ CLASS zcl_abapgit_popup_branch_list IMPLEMENTATION.
FIELD-SYMBOLS <ls_b> TYPE zif_abapgit_git_definitions=>ty_git_branch.
ASSIGN iv_item TO <ls_b>.
ASSERT sy-subrc = 0.
" TODO render mv_default_branch properly, needs respecting support from the picklist components
@ -120,4 +109,15 @@ CLASS zcl_abapgit_popup_branch_list IMPLEMENTATION.
ri_html = zcl_abapgit_html=>create( |{ <ls_b>-display_name }{ lv_head_marker }| ).
ENDMETHOD.
METHOD zif_abapgit_html_popup~create_picklist.
CREATE OBJECT ro_picklist
EXPORTING
iv_title = 'Choose Branch'
it_list = fetch_branch_list( )
ii_item_renderer = me.
ENDMETHOD.
ENDCLASS.

View File

@ -24,7 +24,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_POPUP_CODE_INSP IMPLEMENTATION.
CLASS zcl_abapgit_popup_code_insp IMPLEMENTATION.
METHOD create.
@ -44,7 +44,6 @@ CLASS ZCL_ABAPGIT_POPUP_CODE_INSP IMPLEMENTATION.
FIELD-SYMBOLS <ls_item> TYPE LINE OF zif_abapgit_code_inspector=>ty_variants.
ASSIGN iv_item TO <ls_item>.
ASSERT sy-subrc = 0.
ri_html = zcl_abapgit_html=>create( |<b>{ <ls_item>-name }</b> - { <ls_item>-description }| ).

View File

@ -67,7 +67,6 @@ CLASS zcl_abapgit_popup_pull_request IMPLEMENTATION.
FIELD-SYMBOLS <ls_pr> TYPE zif_abapgit_pr_enum_provider=>ty_pull_request.
ASSIGN iv_item TO <ls_pr>.
ASSERT sy-subrc = 0.
ri_html = zcl_abapgit_html=>create( |<b>{ <ls_pr>-number }</b> - { <ls_pr>-title } @{ <ls_pr>-user }| ).

View File

@ -18,6 +18,7 @@ CLASS zcl_abapgit_popup_tag_list DEFINITION
IMPORTING
iv_url TYPE string.
PROTECTED SECTION.
PRIVATE SECTION.
DATA mv_repo_url TYPE string.
@ -34,26 +35,15 @@ ENDCLASS.
CLASS zcl_abapgit_popup_tag_list IMPLEMENTATION.
METHOD create.
CREATE OBJECT ri_popup TYPE zcl_abapgit_popup_tag_list
EXPORTING
iv_url = iv_url.
ENDMETHOD.
METHOD constructor.
mv_repo_url = iv_url.
ENDMETHOD.
METHOD zif_abapgit_html_popup~create_picklist.
CREATE OBJECT ro_picklist
METHOD create.
CREATE OBJECT ri_popup TYPE zcl_abapgit_popup_tag_list
EXPORTING
iv_title = 'Choose Tag'
it_list = fetch_tag_list( )
ii_item_renderer = me.
iv_url = iv_url.
ENDMETHOD.
@ -80,9 +70,19 @@ CLASS zcl_abapgit_popup_tag_list IMPLEMENTATION.
FIELD-SYMBOLS <ls_tag> TYPE zif_abapgit_git_definitions=>ty_git_branch.
ASSIGN iv_item TO <ls_tag>.
ASSERT sy-subrc = 0.
ri_html = zcl_abapgit_html=>create( |{ <ls_tag>-display_name }| ).
ENDMETHOD.
METHOD zif_abapgit_html_popup~create_picklist.
CREATE OBJECT ro_picklist
EXPORTING
iv_title = 'Choose Tag'
it_list = fetch_tag_list( )
ii_item_renderer = me.
ENDMETHOD.
ENDCLASS.

View File

@ -248,7 +248,7 @@ CLASS lcl_object_decision_list IMPLEMENTATION.
TRY.
lo_columns->get_column( |{ c_fieldname_obj_type }| ).
lv_object_list = abap_true.
CATCH cx_salv_not_found.
CATCH cx_salv_not_found ##NO_HANDLER.
ENDTRY.
setup_columns(

View File

@ -331,12 +331,15 @@ CLASS ltcl_bcp47_to_sap1 IMPLEMENTATION.
DATA lv_result TYPE sy-langu.
lv_result = zcl_abapgit_convert=>language_bcp47_to_sap1( im_from ).
cl_abap_unit_assert=>assert_equals( exp = im_to
act = lv_result ).
cl_abap_unit_assert=>assert_equals(
exp = im_to
act = lv_result
msg = |Converting "{ im_from }" should result in "{ im_to }"| ).
ENDMETHOD.
METHOD assert_bcp47_to_sap1_fail.
DATA lv_result TYPE string.
DATA lv_act TYPE sy-subrc.
zcl_abapgit_convert=>language_bcp47_to_sap1(
EXPORTING
@ -345,10 +348,15 @@ CLASS ltcl_bcp47_to_sap1 IMPLEMENTATION.
re_lang_sap1 = lv_result
EXCEPTIONS
no_assignment = 1
OTHERS = 2 ).
OTHERS = 2 ).
cl_abap_unit_assert=>assert_equals( exp = 1
act = sy-subrc ).
" Assert itself might change sy-subrc (it does in 702!)
lv_act = sy-subrc.
cl_abap_unit_assert=>assert_equals(
exp = 1
act = lv_act
msg = |Converting "{ im_from }" should fail| ).
ENDMETHOD.
METHOD english.
@ -466,14 +474,18 @@ CLASS ltcl_sap1_to_bcp47 IMPLEMENTATION.
METHOD assert_sap1_to_bcp47.
DATA lv_result TYPE string.
lv_result = zcl_abapgit_convert=>language_sap1_to_bcp47( im_from ).
cl_abap_unit_assert=>assert_equals( exp = im_to
act = lv_result ).
cl_abap_unit_assert=>assert_equals(
exp = im_to
act = lv_result
msg = |Converting "{ im_from }" should result in "{ im_to }"| ).
ENDMETHOD.
METHOD assert_sap1_to_bcp47_fail.
DATA lv_result TYPE string.
DATA lv_act TYPE sy-subrc.
zcl_abapgit_convert=>language_sap1_to_bcp47(
EXPORTING
@ -482,10 +494,15 @@ CLASS ltcl_sap1_to_bcp47 IMPLEMENTATION.
re_lang_bcp47 = lv_result
EXCEPTIONS
no_assignment = 1
OTHERS = 2 ).
OTHERS = 2 ).
cl_abap_unit_assert=>assert_equals( exp = 1
act = sy-subrc ).
" Assert itself might change sy-subrc (it does in 702!)
lv_act = sy-subrc.
cl_abap_unit_assert=>assert_equals(
exp = 1
act = lv_act
msg = |Converting "{ im_from }" should fail| ).
ENDMETHOD.
METHOD english.

View File

@ -81,18 +81,18 @@ CLASS lcl_startup IMPLEMENTATION.
" - open a specific repo by package name provided by ADT
" These overrule the last shown repo
GET PARAMETER ID zif_abapgit_definitions=>c_spagpa_param_repo_key FIELD lv_repo_key.
GET PARAMETER ID zif_abapgit_definitions=>c_spagpa_param_package FIELD lv_package.
GET PARAMETER ID zif_abapgit_definitions=>c_spagpa_param_repo_key FIELD lv_repo_key ##EXISTS.
GET PARAMETER ID zif_abapgit_definitions=>c_spagpa_param_package FIELD lv_package ##EXISTS.
lv_package_adt = get_package_from_adt( ).
IF lv_repo_key IS NOT INITIAL.
SET PARAMETER ID zif_abapgit_definitions=>c_spagpa_param_repo_key FIELD ''.
SET PARAMETER ID zif_abapgit_definitions=>c_spagpa_param_repo_key FIELD '' ##EXISTS.
zcl_abapgit_persistence_user=>get_instance( )->set_repo_show( lv_repo_key ).
ELSEIF lv_package IS NOT INITIAL.
SET PARAMETER ID zif_abapgit_definitions=>c_spagpa_param_package FIELD ''.
SET PARAMETER ID zif_abapgit_definitions=>c_spagpa_param_package FIELD '' ##EXISTS.
set_start_repo_from_package( lv_package ).
ELSEIF lv_package_adt IS NOT INITIAL.
@ -198,7 +198,7 @@ CLASS lcl_startup IMPLEMENTATION.
ENDIF.
CATCH cx_root.
CATCH cx_root ##NO_HANDLER.
" Some problems with dynamic ADT access.
" Let's ignore it for now and fail silently
ENDTRY.

View File

@ -181,7 +181,7 @@ FORM password_popup
pv_repo_url TYPE string
CHANGING
cv_user TYPE string
cv_pass TYPE string.
cv_pass TYPE string ##CALLED.
lcl_password_dialog=>popup(
EXPORTING