Skip to content

Commit 645217a

Browse files
Automated changes (#20)
Co-authored-by: oblomov-dev <[email protected]>
1 parent 7a69894 commit 645217a

3 files changed

+31
-1
lines changed

src/z2ui5_cl_ajson.clas.abap

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -848,6 +848,8 @@ CLASS z2ui5_cl_ajson IMPLEMENTATION.
848848
DATA lv_path_pattern TYPE string.
849849

850850
CREATE OBJECT lo_section.
851+
lo_section->mi_custom_mapping = mi_custom_mapping.
852+
851853
lv_normalized_path = lcl_utils=>normalize_path( iv_path ).
852854
lv_path_len = strlen( lv_normalized_path ).
853855
ls_path_parts = lcl_utils=>split_path( lv_normalized_path ).

src/z2ui5_cl_ajson_mapping.clas.testclasses.abap

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -358,6 +358,7 @@ CLASS ltcl_fields DEFINITION FINAL FOR TESTING
358358
to_json_without_path FOR TESTING RAISING z2ui5_cx_ajson_error,
359359
to_json_with_path FOR TESTING RAISING z2ui5_cx_ajson_error,
360360
to_abap FOR TESTING RAISING z2ui5_cx_ajson_error,
361+
to_abap_with_slice FOR TESTING RAISING z2ui5_cx_ajson_error,
361362
to_json IMPORTING iv_path TYPE string RETURNING VALUE(rv_result) TYPE string RAISING z2ui5_cx_ajson_error.
362363

363364

@@ -403,6 +404,33 @@ CLASS ltcl_fields IMPLEMENTATION.
403404

404405
ENDMETHOD.
405406

407+
METHOD to_abap_with_slice.
408+
409+
DATA: BEGIN OF ls_act,
410+
y TYPE i,
411+
END OF ls_act.
412+
413+
DATA lo_cut TYPE REF TO z2ui5_if_ajson.
414+
DATA lt_mapping_fields TYPE z2ui5_if_ajson_mapping=>ty_mapping_fields.
415+
DATA ls_mapping_field LIKE LINE OF lt_mapping_fields.
416+
417+
CLEAR ls_mapping_field.
418+
ls_mapping_field-abap = 'Y'.
419+
ls_mapping_field-json = 'c'.
420+
INSERT ls_mapping_field INTO TABLE lt_mapping_fields.
421+
422+
lo_cut = z2ui5_cl_ajson=>parse( iv_json = '{"a":1,"b":{"c":2},"d":{"e":3}}'
423+
ii_custom_mapping = z2ui5_cl_ajson_mapping=>create_field_mapping( lt_mapping_fields )
424+
)->slice( `/b` ).
425+
426+
lo_cut->to_abap( IMPORTING ev_container = ls_act ).
427+
428+
cl_abap_unit_assert=>assert_equals(
429+
act = ls_act-y
430+
exp = 2 ).
431+
432+
ENDMETHOD.
433+
406434

407435
METHOD to_json_without_path.
408436

src/z2ui5_if_ajson.intf.abap

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
INTERFACE z2ui5_if_ajson
22
PUBLIC.
33

4-
CONSTANTS version TYPE string VALUE 'v1.1.10'. "#EC NOTEXT
4+
CONSTANTS version TYPE string VALUE 'v1.1.11'. "#EC NOTEXT
55
CONSTANTS origin TYPE string VALUE 'https://github.com/sbcgua/ajson'. "#EC NOTEXT
66
CONSTANTS license TYPE string VALUE 'MIT'. "#EC NOTEXT
77

0 commit comments

Comments
 (0)