Refactor code inspector (#2412)

* delete method GET_INSPECTION

delete method GET_INSPECTION, not called from anywhere

* delete class ZCL_ABAPGIT_ABAP_UNIT_TESTS

* delete class ZCL_ABAPGIT_SYNTAX_CHECK

* delete class ZCL_ABAPGIT_ADHOC_CODE_INSP

* move VARIANT to importing in RUN

instead of in the constructor

* one variable containing the name

instaed of 2 with same contents

* linting
This commit is contained in:
Lars Hvam 2019-02-19 21:37:40 -08:00 committed by GitHub
parent e91697e4e2
commit ffcd6c82ed
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 103 additions and 552 deletions

View File

@ -32,9 +32,9 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_SYNTAX IMPLEMENTATION.
DATA: li_syntax_check TYPE REF TO zif_abapgit_code_inspector. DATA: li_syntax_check TYPE REF TO zif_abapgit_code_inspector.
li_syntax_check = zcl_abapgit_factory=>get_syntax_check( mo_repo->get_package( ) ). li_syntax_check = zcl_abapgit_factory=>get_code_inspector( mo_repo->get_package( ) ).
mt_result = li_syntax_check->run( ). mt_result = li_syntax_check->run( 'SYNTAX_CHECK' ).
CREATE OBJECT ro_html. CREATE OBJECT ro_html.
ro_html->add( '<div class="toc">' ). ro_html->add( '<div class="toc">' ).

View File

@ -1,51 +0,0 @@
CLASS zcl_abapgit_abap_unit_tests DEFINITION
PUBLIC
CREATE PRIVATE
GLOBAL FRIENDS zcl_abapgit_factory.
PUBLIC SECTION.
INTERFACES:
zif_abapgit_code_inspector.
METHODS:
constructor
IMPORTING
iv_package TYPE devclass
RAISING
zcx_abapgit_exception.
PRIVATE SECTION.
DATA:
mo_adhoc_code_inspector TYPE REF TO zif_abapgit_code_inspector.
ENDCLASS.
CLASS zcl_abapgit_abap_unit_tests IMPLEMENTATION.
METHOD constructor.
mo_adhoc_code_inspector = zcl_abapgit_factory=>get_adhoc_code_inspector(
iv_package = iv_package
iv_test_name = 'CL_SAUNIT_LEGACY_CI_CHECK' ).
ENDMETHOD.
METHOD zif_abapgit_code_inspector~get_inspection.
ro_inspection = mo_adhoc_code_inspector->get_inspection( ).
ENDMETHOD.
METHOD zif_abapgit_code_inspector~run.
rt_list = mo_adhoc_code_inspector->run( ).
ENDMETHOD.
ENDCLASS.

View File

@ -1,17 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<VSEOCLASS>
<CLSNAME>ZCL_ABAPGIT_ABAP_UNIT_TESTS</CLSNAME>
<VERSION>1</VERSION>
<LANGU>E</LANGU>
<DESCRIPT>abapGit - Syntax check</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>
<UNICODE>X</UNICODE>
</VSEOCLASS>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -1,132 +0,0 @@
CLASS zcl_abapgit_adhoc_code_insp DEFINITION
PUBLIC
CREATE PRIVATE
INHERITING FROM zcl_abapgit_code_inspector
GLOBAL FRIENDS zcl_abapgit_factory.
PUBLIC SECTION.
METHODS:
constructor
IMPORTING
iv_package TYPE devclass
iv_test_name TYPE sci_tstval-testname
RAISING
zcx_abapgit_exception.
PROTECTED SECTION.
METHODS:
create_variant REDEFINITION,
cleanup REDEFINITION.
PRIVATE SECTION.
DATA:
mo_variant TYPE REF TO cl_ci_checkvariant,
mv_test_name TYPE sci_tstval-testname.
ENDCLASS.
CLASS zcl_abapgit_adhoc_code_insp IMPLEMENTATION.
METHOD cleanup.
super->cleanup( io_set ).
IF mo_variant IS BOUND.
mo_variant->delete(
EXCEPTIONS
exists_in_insp = 1
locked = 2
error_in_enqueue = 3
not_authorized = 4
transport_error = 5
OTHERS = 6 ).
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise( |Couldn't delete variant. Subrc = { sy-subrc }| ).
ENDIF.
ENDIF.
ENDMETHOD.
METHOD constructor.
DATA: lv_check_variant_name TYPE sci_chkv.
IF iv_test_name IS INITIAL.
zcx_abapgit_exception=>raise( |Please supply a test name| ).
ENDIF.
" we supply a dummy name for the check variant,
" because we have to persists it to be able to run in parallel.
" Afterwards it's deleted.
lv_check_variant_name = |{ sy-uname }_{ sy-datum }_{ sy-uzeit }|.
super->constructor( iv_package = iv_package
iv_check_variant_name = lv_check_variant_name ).
mv_test_name = iv_test_name.
ENDMETHOD.
METHOD create_variant.
DATA: lt_variant TYPE sci_tstvar,
ls_variant LIKE LINE OF lt_variant.
cl_ci_checkvariant=>create(
EXPORTING
p_user = sy-uname
p_name = mv_check_variant_name
RECEIVING
p_ref = mo_variant
EXCEPTIONS
chkv_already_exists = 1
locked = 2
error_in_enqueue = 3
not_authorized = 4
OTHERS = 5 ).
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise( |Couldn't create variant. Subrc = { sy-subrc }| ).
ENDIF.
ls_variant-testname = mv_test_name.
INSERT ls_variant INTO TABLE lt_variant.
mo_variant->set_variant(
EXPORTING
p_variant = lt_variant
EXCEPTIONS
not_enqueued = 1
OTHERS = 2 ).
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise( |Couldn't set variant. Subrc = { sy-subrc }| ).
ENDIF.
mo_variant->save(
EXPORTING
p_variant = mo_variant->variant
EXCEPTIONS
empty_variant = 1
transport_error = 2
not_authorized = 3
OTHERS = 4 ).
IF sy-subrc <> 0.
zcx_abapgit_exception=>raise( |Couldn't save variant. Subrc = { sy-subrc }| ).
ENDIF.
ro_variant = mo_variant.
ENDMETHOD.
ENDCLASS.

View File

@ -1,17 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<VSEOCLASS>
<CLSNAME>ZCL_ABAPGIT_ADHOC_CODE_INSP</CLSNAME>
<VERSION>1</VERSION>
<LANGU>E</LANGU>
<DESCRIPT>abapGit - Syntax check</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>
<UNICODE>X</UNICODE>
</VSEOCLASS>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -1,49 +1,44 @@
CLASS zcl_abapgit_code_inspector DEFINITION CLASS zcl_abapgit_code_inspector DEFINITION
PUBLIC PUBLIC
CREATE PROTECTED CREATE PROTECTED
GLOBAL FRIENDS zcl_abapgit_factory.
GLOBAL FRIENDS zcl_abapgit_factory .
PUBLIC SECTION. PUBLIC SECTION.
INTERFACES:
zif_abapgit_code_inspector.
METHODS: INTERFACES zif_abapgit_code_inspector .
constructor
METHODS constructor
IMPORTING IMPORTING
iv_package TYPE devclass !iv_package TYPE devclass
iv_check_variant_name TYPE sci_chkv OPTIONAL
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_exception .
CLASS-METHODS validate_check_variant
CLASS-METHODS:
validate_check_variant
IMPORTING IMPORTING
iv_check_variant_name TYPE sci_chkv !iv_check_variant_name TYPE sci_chkv
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_exception .
PROTECTED SECTION. PROTECTED SECTION.
TYPES: TYPES:
ty_tdevc_tt TYPE STANDARD TABLE OF tdevc WITH DEFAULT KEY . ty_tdevc_tt TYPE STANDARD TABLE OF tdevc WITH DEFAULT KEY .
DATA: DATA mv_package TYPE devclass .
mv_package TYPE devclass,
mv_check_variant_name TYPE sci_chkv.
METHODS: METHODS create_variant
create_variant IMPORTING
!iv_variant TYPE sci_chkv
RETURNING RETURNING
VALUE(ro_variant) TYPE REF TO cl_ci_checkvariant VALUE(ro_variant) TYPE REF TO cl_ci_checkvariant
RAISING RAISING
zcx_abapgit_exception, zcx_abapgit_exception .
METHODS cleanup
cleanup
IMPORTING IMPORTING
io_set TYPE REF TO cl_ci_objectset !io_set TYPE REF TO cl_ci_objectset
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_exception .
PRIVATE SECTION. PRIVATE SECTION.
CONSTANTS: CONSTANTS:
BEGIN OF co_run_mode, BEGIN OF co_run_mode,
run_with_popup TYPE sychar01 VALUE 'P', run_with_popup TYPE sychar01 VALUE 'P',
@ -52,47 +47,39 @@ CLASS zcl_abapgit_code_inspector DEFINITION
run_in_batch TYPE sychar01 VALUE 'B', run_in_batch TYPE sychar01 VALUE 'B',
run_loc_parallel TYPE sychar01 VALUE 'L', run_loc_parallel TYPE sychar01 VALUE 'L',
run_direct TYPE sychar01 VALUE 'L', run_direct TYPE sychar01 VALUE 'L',
END OF co_run_mode. END OF co_run_mode .
DATA mo_inspection TYPE REF TO cl_ci_inspection .
DATA mv_name TYPE sci_objs .
DATA mv_run_mode TYPE sychar01 .
DATA: METHODS find_all_subpackages
mo_inspection TYPE REF TO cl_ci_inspection,
mv_objectset_name TYPE sci_objs,
mv_inspection_name TYPE sci_insp,
mv_run_mode TYPE sychar01.
METHODS:
find_all_subpackages
IMPORTING IMPORTING
iv_package TYPE devclass !iv_package TYPE devclass
RETURNING RETURNING
VALUE(rt_packages) TYPE ty_tdevc_tt, VALUE(rt_packages) TYPE ty_tdevc_tt .
METHODS create_objectset
create_objectset
RETURNING RETURNING
VALUE(ro_set) TYPE REF TO cl_ci_objectset, VALUE(ro_set) TYPE REF TO cl_ci_objectset .
METHODS run_inspection
run_inspection
IMPORTING IMPORTING
io_inspection TYPE REF TO cl_ci_inspection !io_inspection TYPE REF TO cl_ci_inspection
RETURNING RETURNING
VALUE(rt_list) TYPE scit_alvlist VALUE(rt_list) TYPE scit_alvlist
RAISING RAISING
zcx_abapgit_exception, zcx_abapgit_exception .
METHODS create_inspection
create_inspection
IMPORTING IMPORTING
io_set TYPE REF TO cl_ci_objectset !io_set TYPE REF TO cl_ci_objectset
io_variant TYPE REF TO cl_ci_checkvariant !io_variant TYPE REF TO cl_ci_checkvariant
RETURNING RETURNING
VALUE(ro_inspection) TYPE REF TO cl_ci_inspection VALUE(ro_inspection) TYPE REF TO cl_ci_inspection
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_exception .
ENDCLASS. ENDCLASS.
CLASS zcl_abapgit_code_inspector IMPLEMENTATION. CLASS ZCL_ABAPGIT_CODE_INSPECTOR IMPLEMENTATION.
METHOD cleanup. METHOD cleanup.
@ -137,16 +124,10 @@ CLASS zcl_abapgit_code_inspector IMPLEMENTATION.
mv_package = iv_package. mv_package = iv_package.
IF iv_check_variant_name IS INITIAL.
zcx_abapgit_exception=>raise( |Please supply check variant| ).
ENDIF.
mv_check_variant_name = iv_check_variant_name.
" We create the inspection and objectset with dummy names. " We create the inspection and objectset with dummy names.
" Because we want to persist them so we can run it in parallel. " Because we want to persist them so we can run it in parallel.
" Both are deleted afterwards. " Both are deleted afterwards.
mv_inspection_name = mv_objectset_name = |{ sy-uname }_{ sy-datum }_{ sy-uzeit }|. mv_name = |{ sy-uname }_{ sy-datum }_{ sy-uzeit }|.
" We have to disable parallelization in batch because of lock errors. " We have to disable parallelization in batch because of lock errors.
IF sy-batch = abap_true. IF sy-batch = abap_true.
@ -163,7 +144,7 @@ CLASS zcl_abapgit_code_inspector IMPLEMENTATION.
cl_ci_inspection=>create( cl_ci_inspection=>create(
EXPORTING EXPORTING
p_user = sy-uname p_user = sy-uname
p_name = mv_inspection_name p_name = mv_name
RECEIVING RECEIVING
p_ref = ro_inspection p_ref = ro_inspection
EXCEPTIONS EXCEPTIONS
@ -213,7 +194,8 @@ CLASS zcl_abapgit_code_inspector IMPLEMENTATION.
AND delflag = abap_false AND delflag = abap_false
AND pgmid = 'R3TR'. "#EC CI_GENBUFF AND pgmid = 'R3TR'. "#EC CI_GENBUFF
ro_set = cl_ci_objectset=>save_from_list( p_name = mv_objectset_name ro_set = cl_ci_objectset=>save_from_list(
p_name = mv_name
p_objects = lt_objs ). p_objects = lt_objs ).
ENDMETHOD. ENDMETHOD.
@ -221,14 +203,14 @@ CLASS zcl_abapgit_code_inspector IMPLEMENTATION.
METHOD create_variant. METHOD create_variant.
IF mv_check_variant_name IS INITIAL. IF iv_variant IS INITIAL.
zcx_abapgit_exception=>raise( |No check variant supplied.| ). zcx_abapgit_exception=>raise( |No check variant supplied.| ).
ENDIF. ENDIF.
cl_ci_checkvariant=>get_ref( cl_ci_checkvariant=>get_ref(
EXPORTING EXPORTING
p_user = '' p_user = ''
p_name = mv_check_variant_name p_name = iv_variant
RECEIVING RECEIVING
p_ref = ro_variant p_ref = ro_variant
EXCEPTIONS EXCEPTIONS
@ -238,9 +220,9 @@ CLASS zcl_abapgit_code_inspector IMPLEMENTATION.
CASE sy-subrc. CASE sy-subrc.
WHEN 1. WHEN 1.
zcx_abapgit_exception=>raise( |Check variant { mv_check_variant_name } doesn't exist| ). zcx_abapgit_exception=>raise( |Check variant { iv_variant } doesn't exist| ).
WHEN 2. WHEN 2.
zcx_abapgit_exception=>raise( |Parameter missing for check variant { mv_check_variant_name }| ). zcx_abapgit_exception=>raise( |Parameter missing for check variant { iv_variant }| ).
ENDCASE. ENDCASE.
ENDMETHOD. ENDMETHOD.
@ -308,17 +290,13 @@ CLASS zcl_abapgit_code_inspector IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD zif_abapgit_code_inspector~get_inspection.
ro_inspection = mo_inspection.
ENDMETHOD.
METHOD zif_abapgit_code_inspector~run. METHOD zif_abapgit_code_inspector~run.
DATA: lo_set TYPE REF TO cl_ci_objectset, DATA: lo_set TYPE REF TO cl_ci_objectset,
lo_variant TYPE REF TO cl_ci_checkvariant, lo_variant TYPE REF TO cl_ci_checkvariant,
lx_error TYPE REF TO zcx_abapgit_exception. lx_error TYPE REF TO zcx_abapgit_exception.
TRY. TRY.
lo_set = create_objectset( ). lo_set = create_objectset( ).
@ -327,7 +305,7 @@ CLASS zcl_abapgit_code_inspector IMPLEMENTATION.
RETURN. RETURN.
ENDIF. ENDIF.
lo_variant = create_variant( ). lo_variant = create_variant( iv_variant ).
mo_inspection = create_inspection( mo_inspection = create_inspection(
io_set = lo_set io_set = lo_set

View File

@ -17,33 +17,10 @@ CLASS zcl_abapgit_factory DEFINITION
CLASS-METHODS get_code_inspector CLASS-METHODS get_code_inspector
IMPORTING IMPORTING
!iv_package TYPE devclass !iv_package TYPE devclass
!iv_check_variant_name TYPE sci_chkv
RETURNING RETURNING
VALUE(ri_code_inspector) TYPE REF TO zif_abapgit_code_inspector VALUE(ri_code_inspector) TYPE REF TO zif_abapgit_code_inspector
RAISING RAISING
zcx_abapgit_exception . zcx_abapgit_exception .
CLASS-METHODS get_syntax_check
IMPORTING
!iv_package TYPE devclass
RETURNING
VALUE(ri_syntax_check) TYPE REF TO zif_abapgit_code_inspector
RAISING
zcx_abapgit_exception .
CLASS-METHODS get_adhoc_code_inspector
IMPORTING
!iv_package TYPE devclass
iv_test_name TYPE sci_tstval-testname
RETURNING
VALUE(ri_adhoc_code_inspector) TYPE REF TO zif_abapgit_code_inspector
RAISING
zcx_abapgit_exception .
CLASS-METHODS get_abap_unit_tests
IMPORTING
!iv_package TYPE devclass
RETURNING
VALUE(ri_abap_unit_tests) TYPE REF TO zif_abapgit_code_inspector
RAISING
zcx_abapgit_exception .
CLASS-METHODS get_branch_overview CLASS-METHODS get_branch_overview
IMPORTING IMPORTING
!io_repo TYPE REF TO zcl_abapgit_repo_online !io_repo TYPE REF TO zcl_abapgit_repo_online
@ -56,11 +33,10 @@ CLASS zcl_abapgit_factory DEFINITION
VALUE(ri_logic) TYPE REF TO zif_abapgit_stage_logic . VALUE(ri_logic) TYPE REF TO zif_abapgit_stage_logic .
CLASS-METHODS get_cts_api CLASS-METHODS get_cts_api
RETURNING RETURNING
VALUE(ri_cts_api) TYPE REF TO zif_abapgit_cts_api. VALUE(ri_cts_api) TYPE REF TO zif_abapgit_cts_api .
CLASS-METHODS get_frontend_services CLASS-METHODS get_frontend_services
RETURNING RETURNING
VALUE(ri_fe_serv) TYPE REF TO zif_abapgit_frontend_services. VALUE(ri_fe_serv) TYPE REF TO zif_abapgit_frontend_services .
PROTECTED SECTION. PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
@ -75,29 +51,18 @@ CLASS zcl_abapgit_factory DEFINITION
TYPES: TYPES:
BEGIN OF ty_code_inspector, BEGIN OF ty_code_inspector,
package TYPE devclass, package TYPE devclass,
check_variant_name TYPE sci_chkv,
instance TYPE REF TO zif_abapgit_code_inspector, instance TYPE REF TO zif_abapgit_code_inspector,
END OF ty_code_inspector . END OF ty_code_inspector .
TYPES: TYPES:
tty_code_inspector TYPE HASHED TABLE OF ty_code_inspector tty_code_inspector TYPE HASHED TABLE OF ty_code_inspector
WITH UNIQUE KEY package check_variant_name .
TYPES:
BEGIN OF ty_syntax_check,
package TYPE devclass,
instance TYPE REF TO zif_abapgit_code_inspector,
END OF ty_syntax_check .
TYPES:
tty_syntax_check TYPE HASHED TABLE OF ty_syntax_check
WITH UNIQUE KEY package . WITH UNIQUE KEY package .
CLASS-DATA gi_tadir TYPE REF TO zif_abapgit_tadir . CLASS-DATA gi_tadir TYPE REF TO zif_abapgit_tadir .
CLASS-DATA gt_sap_package TYPE tty_sap_package . CLASS-DATA gt_sap_package TYPE tty_sap_package .
CLASS-DATA gt_code_inspector TYPE tty_code_inspector . CLASS-DATA gt_code_inspector TYPE tty_code_inspector .
CLASS-DATA gt_syntax_check TYPE tty_syntax_check .
CLASS-DATA gi_stage_logic TYPE REF TO zif_abapgit_stage_logic . CLASS-DATA gi_stage_logic TYPE REF TO zif_abapgit_stage_logic .
CLASS-DATA gi_cts_api TYPE REF TO zif_abapgit_cts_api. CLASS-DATA gi_cts_api TYPE REF TO zif_abapgit_cts_api .
CLASS-DATA gi_adhoc_code_inspector TYPE REF TO zif_abapgit_code_inspector. CLASS-DATA gi_fe_services TYPE REF TO zif_abapgit_frontend_services .
CLASS-DATA gi_fe_services TYPE REF TO zif_abapgit_frontend_services.
ENDCLASS. ENDCLASS.
@ -105,35 +70,6 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_FACTORY IMPLEMENTATION. CLASS ZCL_ABAPGIT_FACTORY IMPLEMENTATION.
METHOD get_abap_unit_tests.
IF gi_adhoc_code_inspector IS BOUND.
ri_abap_unit_tests = gi_adhoc_code_inspector.
ELSE.
CREATE OBJECT ri_abap_unit_tests
TYPE zcl_abapgit_abap_unit_tests
EXPORTING
iv_package = iv_package.
ENDIF.
ENDMETHOD.
METHOD get_adhoc_code_inspector.
IF gi_adhoc_code_inspector IS BOUND.
ri_adhoc_code_inspector = gi_adhoc_code_inspector.
ELSE.
CREATE OBJECT ri_adhoc_code_inspector
TYPE zcl_abapgit_adhoc_code_insp
EXPORTING
iv_package = iv_package
iv_test_name = iv_test_name.
ENDIF.
ENDMETHOD.
METHOD get_branch_overview. METHOD get_branch_overview.
CREATE OBJECT ri_branch_overview CREATE OBJECT ri_branch_overview
@ -150,16 +86,13 @@ CLASS ZCL_ABAPGIT_FACTORY IMPLEMENTATION.
FIELD-SYMBOLS: <ls_code_inspector> TYPE zcl_abapgit_factory=>ty_code_inspector. FIELD-SYMBOLS: <ls_code_inspector> TYPE zcl_abapgit_factory=>ty_code_inspector.
READ TABLE gt_code_inspector ASSIGNING <ls_code_inspector> READ TABLE gt_code_inspector ASSIGNING <ls_code_inspector>
WITH TABLE KEY package = iv_package WITH TABLE KEY package = iv_package.
check_variant_name = iv_check_variant_name.
IF sy-subrc <> 0. IF sy-subrc <> 0.
ls_code_inspector-package = iv_package. ls_code_inspector-package = iv_package.
ls_code_inspector-check_variant_name = iv_check_variant_name.
CREATE OBJECT ls_code_inspector-instance TYPE zcl_abapgit_code_inspector CREATE OBJECT ls_code_inspector-instance TYPE zcl_abapgit_code_inspector
EXPORTING EXPORTING
iv_package = iv_package iv_package = iv_package.
iv_check_variant_name = iv_check_variant_name.
INSERT ls_code_inspector INSERT ls_code_inspector
INTO TABLE gt_code_inspector INTO TABLE gt_code_inspector
@ -229,31 +162,6 @@ CLASS ZCL_ABAPGIT_FACTORY IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD get_syntax_check.
DATA: ls_syntax_check LIKE LINE OF gt_syntax_check.
FIELD-SYMBOLS: <ls_syntax_check> TYPE zcl_abapgit_factory=>ty_syntax_check.
READ TABLE gt_syntax_check ASSIGNING <ls_syntax_check>
WITH TABLE KEY package = iv_package.
IF sy-subrc <> 0.
ls_syntax_check-package = iv_package.
CREATE OBJECT ls_syntax_check-instance TYPE zcl_abapgit_syntax_check
EXPORTING
iv_package = iv_package.
INSERT ls_syntax_check
INTO TABLE gt_syntax_check
ASSIGNING <ls_syntax_check>.
ENDIF.
ri_syntax_check = <ls_syntax_check>-instance.
ENDMETHOD.
METHOD get_tadir. METHOD get_tadir.
IF gi_tadir IS INITIAL. IF gi_tadir IS INITIAL.

View File

@ -15,24 +15,20 @@ CLASS zcl_abapgit_injector DEFINITION
CLASS-METHODS set_code_inspector CLASS-METHODS set_code_inspector
IMPORTING IMPORTING
!iv_package TYPE devclass !iv_package TYPE devclass
!iv_check_variant_name TYPE sci_chkv OPTIONAL
!ii_code_inspector TYPE REF TO zif_abapgit_code_inspector . !ii_code_inspector TYPE REF TO zif_abapgit_code_inspector .
CLASS-METHODS set_syntax_check
IMPORTING
!iv_package TYPE devclass
!ii_syntax_check TYPE REF TO zif_abapgit_code_inspector .
CLASS-METHODS set_stage_logic CLASS-METHODS set_stage_logic
IMPORTING IMPORTING
!ii_logic TYPE REF TO zif_abapgit_stage_logic . !ii_logic TYPE REF TO zif_abapgit_stage_logic .
CLASS-METHODS set_cts_api CLASS-METHODS set_cts_api
IMPORTING IMPORTING
ii_cts_api TYPE REF TO zif_abapgit_cts_api. !ii_cts_api TYPE REF TO zif_abapgit_cts_api .
PROTECTED SECTION.
PRIVATE SECTION. PRIVATE SECTION.
ENDCLASS. ENDCLASS.
CLASS zcl_abapgit_injector IMPLEMENTATION. CLASS ZCL_ABAPGIT_INJECTOR IMPLEMENTATION.
METHOD set_code_inspector. METHOD set_code_inspector.
@ -42,12 +38,10 @@ CLASS zcl_abapgit_injector IMPLEMENTATION.
READ TABLE zcl_abapgit_factory=>gt_code_inspector READ TABLE zcl_abapgit_factory=>gt_code_inspector
ASSIGNING <ls_code_inspector> ASSIGNING <ls_code_inspector>
WITH TABLE KEY package = iv_package WITH TABLE KEY package = iv_package.
check_variant_name = iv_check_variant_name.
IF sy-subrc <> 0. IF sy-subrc <> 0.
ls_code_inspector-package = iv_package. ls_code_inspector-package = iv_package.
ls_code_inspector-check_variant_name = iv_check_variant_name.
INSERT ls_code_inspector INSERT ls_code_inspector
INTO TABLE zcl_abapgit_factory=>gt_code_inspector INTO TABLE zcl_abapgit_factory=>gt_code_inspector
@ -60,6 +54,11 @@ CLASS zcl_abapgit_injector IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD set_cts_api.
zcl_abapgit_factory=>gi_cts_api = ii_cts_api.
ENDMETHOD.
METHOD set_sap_package. METHOD set_sap_package.
DATA: ls_sap_package TYPE zcl_abapgit_factory=>ty_sap_package. DATA: ls_sap_package TYPE zcl_abapgit_factory=>ty_sap_package.
@ -90,36 +89,9 @@ CLASS zcl_abapgit_injector IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD set_syntax_check.
DATA: ls_syntax_check LIKE LINE OF zcl_abapgit_factory=>gt_syntax_check.
FIELD-SYMBOLS: <ls_syntax_check> LIKE LINE OF zcl_abapgit_factory=>gt_syntax_check.
READ TABLE zcl_abapgit_factory=>gt_syntax_check
ASSIGNING <ls_syntax_check>
WITH TABLE KEY package = iv_package.
IF sy-subrc <> 0.
ls_syntax_check-package = iv_package.
INSERT ls_syntax_check
INTO TABLE zcl_abapgit_factory=>gt_syntax_check
ASSIGNING <ls_syntax_check>.
ENDIF.
<ls_syntax_check>-instance = ii_syntax_check.
ENDMETHOD.
METHOD set_tadir. METHOD set_tadir.
zcl_abapgit_factory=>gi_tadir = ii_tadir. zcl_abapgit_factory=>gi_tadir = ii_tadir.
ENDMETHOD. ENDMETHOD.
METHOD set_cts_api.
zcl_abapgit_factory=>gi_cts_api = ii_cts_api.
ENDMETHOD.
ENDCLASS. ENDCLASS.

View File

@ -501,11 +501,9 @@ CLASS ZCL_ABAPGIT_REPO IMPLEMENTATION.
DATA: li_code_inspector TYPE REF TO zif_abapgit_code_inspector. DATA: li_code_inspector TYPE REF TO zif_abapgit_code_inspector.
li_code_inspector = zcl_abapgit_factory=>get_code_inspector( li_code_inspector = zcl_abapgit_factory=>get_code_inspector( get_package( ) ).
iv_package = get_package( )
iv_check_variant_name = |{ iv_check_variant }| ).
rt_list = li_code_inspector->run( ). rt_list = li_code_inspector->run( |{ iv_check_variant }| ).
DELETE rt_list WHERE kind = 'N'. DELETE rt_list WHERE kind = 'N'.

View File

@ -34,11 +34,6 @@ CLASS ltcl_code_inspector IMPLEMENTATION.
ENDIF. ENDIF.
ENDMETHOD.
METHOD zif_abapgit_code_inspector~get_inspection. "##needed
ENDMETHOD. ENDMETHOD.
ENDCLASS. ENDCLASS.
@ -55,7 +50,6 @@ CLASS ltcl_run_code_inspection DEFINITION FINAL FOR TESTING
mv_check_variant TYPE string. mv_check_variant TYPE string.
METHODS: METHODS:
exception_when_no_check_var FOR TESTING RAISING cx_static_check,
exception_when_error FOR TESTING RAISING cx_static_check, exception_when_error FOR TESTING RAISING cx_static_check,
no_exception_when_no_error FOR TESTING RAISING cx_static_check, no_exception_when_no_error FOR TESTING RAISING cx_static_check,
push_not_possible_if_ci_req FOR TESTING RAISING cx_static_check, push_not_possible_if_ci_req FOR TESTING RAISING cx_static_check,
@ -97,18 +91,8 @@ CLASS zcl_abapgit_repo_online DEFINITION LOCAL FRIENDS ltcl_run_code_inspection.
CLASS ltcl_run_code_inspection IMPLEMENTATION. CLASS ltcl_run_code_inspection IMPLEMENTATION.
METHOD exception_when_no_check_var.
given_online_repo( iv_package = '$DUMMY' ).
given_check_variant( || ).
when_run_code_inspector( ).
then_exception_text_is( |Please supply check variant| ).
ENDMETHOD.
METHOD exception_when_error. METHOD exception_when_error.
given_online_repo( '$DUMMY' ). given_online_repo( '$DUMMY' ).
given_check_variant( |variant| ). given_check_variant( |variant| ).
given_mock_code_inspector( iv_package = '$DUMMY' given_mock_code_inspector( iv_package = '$DUMMY'
@ -130,7 +114,6 @@ CLASS ltcl_run_code_inspection IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD given_online_repo. METHOD given_online_repo.
DATA: ls_data TYPE zif_abapgit_persistence=>ty_repo. DATA: ls_data TYPE zif_abapgit_persistence=>ty_repo.
@ -159,11 +142,10 @@ CLASS ltcl_run_code_inspection IMPLEMENTATION.
EXPORTING EXPORTING
iv_package = iv_package. iv_package = iv_package.
zcl_abapgit_injector=>set_code_inspector( iv_package = iv_package zcl_abapgit_injector=>set_code_inspector(
iv_check_variant_name = iv_check_variant iv_package = iv_package
ii_code_inspector = lo_mock_code_inspector ). ii_code_inspector = lo_mock_code_inspector ).
ENDMETHOD. ENDMETHOD.
METHOD push_not_possible_if_ci_req. METHOD push_not_possible_if_ci_req.

View File

@ -1,50 +0,0 @@
CLASS zcl_abapgit_syntax_check DEFINITION
PUBLIC
CREATE PRIVATE
GLOBAL FRIENDS zcl_abapgit_factory.
PUBLIC SECTION.
INTERFACES:
zif_abapgit_code_inspector.
METHODS:
constructor
IMPORTING
iv_package TYPE devclass
RAISING
zcx_abapgit_exception.
PRIVATE SECTION.
DATA:
mo_adhoc_code_inspector TYPE REF TO zif_abapgit_code_inspector.
ENDCLASS.
CLASS zcl_abapgit_syntax_check IMPLEMENTATION.
METHOD constructor.
mo_adhoc_code_inspector = zcl_abapgit_factory=>get_adhoc_code_inspector(
iv_package = iv_package
iv_test_name = 'CL_CI_TEST_SYNTAX_CHECK' ).
ENDMETHOD.
METHOD zif_abapgit_code_inspector~get_inspection.
ro_inspection = mo_adhoc_code_inspector->get_inspection( ).
ENDMETHOD.
METHOD zif_abapgit_code_inspector~run.
rt_list = mo_adhoc_code_inspector->run( ).
ENDMETHOD.
ENDCLASS.

View File

@ -1,17 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<VSEOCLASS>
<CLSNAME>ZCL_ABAPGIT_SYNTAX_CHECK</CLSNAME>
<VERSION>1</VERSION>
<LANGU>E</LANGU>
<DESCRIPT>abapGit - Syntax check</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>
<UNICODE>X</UNICODE>
</VSEOCLASS>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -1,15 +1,12 @@
INTERFACE zif_abapgit_code_inspector INTERFACE zif_abapgit_code_inspector
PUBLIC. PUBLIC .
METHODS:
run METHODS run
IMPORTING
!iv_variant TYPE sci_chkv
RETURNING RETURNING
VALUE(rt_list) TYPE scit_alvlist VALUE(rt_list) TYPE scit_alvlist
RAISING RAISING
zcx_abapgit_exception, zcx_abapgit_exception .
get_inspection
RETURNING
VALUE(ro_inspection) TYPE REF TO cl_ci_inspection.
ENDINTERFACE. ENDINTERFACE.