diff --git a/src/ui/pages/zcl_abapgit_gui_page_code_insp.clas.abap b/src/ui/pages/zcl_abapgit_gui_page_code_insp.clas.abap index 095b27229..f10b20ca7 100644 --- a/src/ui/pages/zcl_abapgit_gui_page_code_insp.clas.abap +++ b/src/ui/pages/zcl_abapgit_gui_page_code_insp.clas.abap @@ -7,8 +7,9 @@ CLASS zcl_abapgit_gui_page_code_insp DEFINITION PUBLIC FINAL CREATE PUBLIC METHODS: constructor IMPORTING - io_repo TYPE REF TO zcl_abapgit_repo - io_stage TYPE REF TO zcl_abapgit_stage OPTIONAL + io_repo TYPE REF TO zcl_abapgit_repo + io_stage TYPE REF TO zcl_abapgit_stage OPTIONAL + iv_check_variant TYPE sci_chkv OPTIONAL RAISING zcx_abapgit_exception, @@ -118,6 +119,7 @@ CLASS zcl_abapgit_gui_page_code_insp IMPLEMENTATION. super->constructor( ). mo_repo = io_repo. mo_stage = io_stage. + mv_check_variant = iv_check_variant. ms_control-page_title = 'Code Inspector'. determine_check_variant( ). run_code_inspector( ). @@ -126,6 +128,10 @@ CLASS zcl_abapgit_gui_page_code_insp IMPLEMENTATION. METHOD determine_check_variant. + IF mv_check_variant IS NOT INITIAL. + RETURN. + ENDIF. + mv_check_variant = mo_repo->get_local_settings( )-code_inspector_check_variant. IF mv_check_variant IS INITIAL. diff --git a/src/ui/pages/zcl_abapgit_gui_page_runit.clas.abap b/src/ui/pages/zcl_abapgit_gui_page_runit.clas.abap index d88df6502..f9288f107 100644 --- a/src/ui/pages/zcl_abapgit_gui_page_runit.clas.abap +++ b/src/ui/pages/zcl_abapgit_gui_page_runit.clas.abap @@ -77,21 +77,44 @@ CLASS zcl_abapgit_gui_page_runit IMPLEMENTATION. METHOD constructor. + super->constructor( ). mo_repo = io_repo. + + TRY. + CALL METHOD ('\PROGRAM=SAPLSAUCV_GUI_RUNNER\CLASS=PASSPORT')=>get. + CATCH cx_root. + zcx_abapgit_exception=>raise( |Not supported in your NW release| ). + ENDTRY. + ENDMETHOD. METHOD create. DATA lo_component TYPE REF TO zcl_abapgit_gui_page_runit. + DATA lo_page_code_inspector TYPE REF TO zcl_abapgit_gui_page_code_insp. - CREATE OBJECT lo_component EXPORTING io_repo = io_repo. + TRY. + CREATE OBJECT lo_component EXPORTING io_repo = io_repo. - ri_page = zcl_abapgit_gui_page_hoc=>create( - iv_page_title = |Unit Tests| - ii_page_menu_provider = lo_component - ii_child_component = lo_component ). + ri_page = zcl_abapgit_gui_page_hoc=>create( + iv_page_title = |Unit Tests| + ii_page_menu_provider = lo_component + ii_child_component = lo_component ). + + CATCH zcx_abapgit_exception. + + " Fallback as either SAPLSAUCV_GUI_RUNNER is not available in old releases + " or passport=>get is private in newer releases NW >= 756 + CREATE OBJECT lo_page_code_inspector + EXPORTING + io_repo = io_repo + iv_check_variant = 'SWF_ABAP_UNIT'. + + ri_page = lo_page_code_inspector. + + ENDTRY. ENDMETHOD.