From a1535908ec056e46100cfbbd4936f2cfa738b6e3 Mon Sep 17 00:00:00 2001 From: Marc Bernard <59966492+mbtools@users.noreply.github.com> Date: Fri, 29 Nov 2024 02:23:59 -0500 Subject: [PATCH 1/2] Fix unit test in 702 - Part 1 (#7082) --- ...t_abap_language_vers.clas.testclasses.abap | 31 +++++++++++++++---- 1 file changed, 25 insertions(+), 6 deletions(-) diff --git a/src/env/zcl_abapgit_abap_language_vers.clas.testclasses.abap b/src/env/zcl_abapgit_abap_language_vers.clas.testclasses.abap index ef1eb9011..c7edd9ac9 100644 --- a/src/env/zcl_abapgit_abap_language_vers.clas.testclasses.abap +++ b/src/env/zcl_abapgit_abap_language_vers.clas.testclasses.abap @@ -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. From e77abaea8c9ffa7f346e6b0442174f0419f57353 Mon Sep 17 00:00:00 2001 From: Marc Bernard <59966492+mbtools@users.noreply.github.com> Date: Fri, 29 Nov 2024 06:59:30 -0500 Subject: [PATCH 2/2] Fix unit test in 702 - Part 2 (#7083) Co-authored-by: Lars Hvam --- .../zcl_abapgit_convert.clas.testclasses.abap | 37 ++++++++++++++----- 1 file changed, 27 insertions(+), 10 deletions(-) diff --git a/src/utils/zcl_abapgit_convert.clas.testclasses.abap b/src/utils/zcl_abapgit_convert.clas.testclasses.abap index 97b82ee10..2ee5633a2 100644 --- a/src/utils/zcl_abapgit_convert.clas.testclasses.abap +++ b/src/utils/zcl_abapgit_convert.clas.testclasses.abap @@ -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.