mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-02 04:36:49 +08:00
more syntax check #911
This commit is contained in:
parent
9f126932cc
commit
374e69146c
|
@ -6,14 +6,30 @@ public section.
|
||||||
|
|
||||||
class-methods RUN
|
class-methods RUN
|
||||||
importing
|
importing
|
||||||
!IV_PACKAGE type DEVCLASS .
|
!IV_PACKAGE type DEVCLASS
|
||||||
|
returning
|
||||||
|
value(RT_LIST) type SCIT_ALVLIST .
|
||||||
protected section.
|
protected section.
|
||||||
|
|
||||||
|
class-methods CREATE_INSPECTION
|
||||||
|
importing
|
||||||
|
!IO_SET type ref to CL_CI_OBJECTSET
|
||||||
|
!IO_VARIANT type ref to CL_CI_CHECKVARIANT
|
||||||
|
returning
|
||||||
|
value(RO_INSPECTION) type ref to CL_CI_INSPECTION .
|
||||||
class-methods CREATE_OBJECTSET
|
class-methods CREATE_OBJECTSET
|
||||||
importing
|
importing
|
||||||
!IV_PACKAGE type DEVCLASS
|
!IV_PACKAGE type DEVCLASS
|
||||||
returning
|
returning
|
||||||
value(RO_SET) type ref to CL_CI_OBJECTSET .
|
value(RO_SET) type ref to CL_CI_OBJECTSET .
|
||||||
|
class-methods CREATE_VARIANT
|
||||||
|
returning
|
||||||
|
value(RO_VARIANT) type ref to CL_CI_CHECKVARIANT .
|
||||||
|
class-methods RUN_INSPECTION
|
||||||
|
importing
|
||||||
|
!IO_INSPECTION type ref to CL_CI_INSPECTION
|
||||||
|
returning
|
||||||
|
value(RT_LIST) type SCIT_ALVLIST .
|
||||||
private section.
|
private section.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
@ -22,45 +38,121 @@ ENDCLASS.
|
||||||
CLASS ZCL_ABAPGIT_SYNTAX_CHECK IMPLEMENTATION.
|
CLASS ZCL_ABAPGIT_SYNTAX_CHECK IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
|
METHOD create_inspection.
|
||||||
|
|
||||||
|
cl_ci_inspection=>create(
|
||||||
|
EXPORTING
|
||||||
|
p_user = sy-uname
|
||||||
|
p_name = ''
|
||||||
|
RECEIVING
|
||||||
|
p_ref = ro_inspection
|
||||||
|
EXCEPTIONS
|
||||||
|
locked = 1
|
||||||
|
error_in_enqueue = 2
|
||||||
|
not_authorized = 3
|
||||||
|
OTHERS = 4 ).
|
||||||
|
ASSERT sy-subrc = 0.
|
||||||
|
|
||||||
|
ro_inspection->set(
|
||||||
|
p_chkv = io_variant
|
||||||
|
p_objs = io_set
|
||||||
|
* p_deldate = CONV sci_deldat( sy-datum + 1 )
|
||||||
|
).
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD create_objectset.
|
METHOD create_objectset.
|
||||||
|
|
||||||
CONSTANTS: lc_anonymous TYPE sci_objs VALUE ''.
|
DATA: lt_objs TYPE scit_objs,
|
||||||
|
lt_packages TYPE cl_pak_package_queries=>tt_subpackage_info,
|
||||||
DATA: lt_objects TYPE scistadir,
|
ls_package LIKE LINE OF lt_packages,
|
||||||
ls_flags TYPE sci_flgl.
|
ls_obj LIKE LINE OF lt_objs.
|
||||||
|
|
||||||
FIELD-SYMBOLS: <ls_package> LIKE LINE OF lt_objects-sodevc.
|
|
||||||
|
|
||||||
|
|
||||||
ro_set = cl_ci_objectset=>create(
|
cl_pak_package_queries=>get_all_subpackages(
|
||||||
|
EXPORTING
|
||||||
|
im_package = iv_package
|
||||||
|
im_also_local_packages = abap_true
|
||||||
|
IMPORTING
|
||||||
|
et_subpackages = lt_packages ).
|
||||||
|
|
||||||
|
ls_package-package = iv_package.
|
||||||
|
INSERT ls_package INTO TABLE lt_packages.
|
||||||
|
|
||||||
|
* todo
|
||||||
|
ls_obj-objtype = 'PROG'.
|
||||||
|
ls_obj-objname = 'ZABAPGIT'.
|
||||||
|
INSERT ls_obj INTO TABLE lt_objs.
|
||||||
|
|
||||||
|
ro_set = cl_ci_objectset=>save_from_list( lt_objs ).
|
||||||
|
|
||||||
|
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_user = sy-uname
|
||||||
p_name = lc_anonymous ).
|
RECEIVING
|
||||||
|
p_ref = ro_variant
|
||||||
|
EXCEPTIONS
|
||||||
|
chkv_already_exists = 1
|
||||||
|
locked = 2
|
||||||
|
error_in_enqueue = 3
|
||||||
|
not_authorized = 4
|
||||||
|
OTHERS = 5 ).
|
||||||
|
ASSERT sy-subrc = 0.
|
||||||
|
|
||||||
APPEND INITIAL LINE TO lt_objects-sodevc ASSIGNING <ls_package>.
|
ls_variant-testname = 'CL_CI_TEST_SYNTAX_CHECK'.
|
||||||
<ls_package>-sign = 'I'.
|
INSERT ls_variant INTO TABLE lt_variant.
|
||||||
<ls_package>-option = 'CP'.
|
|
||||||
CONCATENATE iv_package '*' INTO <ls_package>-low.
|
|
||||||
* todo, find all subpackages
|
|
||||||
|
|
||||||
ls_flags-class = abap_true.
|
ro_variant->set_variant(
|
||||||
ls_flags-fugrs = abap_true.
|
EXPORTING
|
||||||
ls_flags-repos = abap_true.
|
p_variant = lt_variant
|
||||||
ls_flags-wdyns = abap_true.
|
EXCEPTIONS
|
||||||
ls_flags-ddics = abap_true.
|
not_enqueued = 1
|
||||||
ls_flags-typps = abap_true.
|
OTHERS = 2 ).
|
||||||
|
ASSERT sy-subrc = 0.
|
||||||
ro_set->save_objectset(
|
|
||||||
p_tadir = lt_objects
|
|
||||||
p_sel_flags = ls_flags ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
METHOD run.
|
METHOD run.
|
||||||
|
|
||||||
create_objectset( iv_package ).
|
DATA: lo_set TYPE REF TO cl_ci_objectset,
|
||||||
|
lo_inspection TYPE REF TO cl_ci_inspection,
|
||||||
|
lo_variant TYPE REF TO cl_ci_checkvariant.
|
||||||
|
|
||||||
* todo: add returning parameter
|
|
||||||
|
lo_set = create_objectset( iv_package ).
|
||||||
|
lo_variant = create_variant( ).
|
||||||
|
|
||||||
|
lo_inspection = create_inspection(
|
||||||
|
io_set = lo_set
|
||||||
|
io_variant = lo_variant ).
|
||||||
|
|
||||||
|
rt_list = run_inspection( lo_inspection ).
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
|
METHOD run_inspection.
|
||||||
|
|
||||||
|
io_inspection->run(
|
||||||
|
EXCEPTIONS
|
||||||
|
invalid_check_version = 1
|
||||||
|
OTHERS = 2 ).
|
||||||
|
ASSERT sy-subrc = 0.
|
||||||
|
|
||||||
|
io_inspection->plain_list(
|
||||||
|
IMPORTING
|
||||||
|
p_list = rt_list ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user