Skip to content

Commit 599f200

Browse files
authored
npm updates + additional testcases (#1026)
1 parent 849a418 commit 599f200

File tree

8 files changed

+71
-24
lines changed

8 files changed

+71
-24
lines changed

abaplint.jsonc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -217,6 +217,9 @@
217217
"pack": true,
218218
"selectWithoutInto": true,
219219
"clientSpecified": false,
220+
"commonPart": true,
221+
"fieldGroups": true,
222+
"replaceInto": true,
220223
"occurences": true,
221224
"regex": false,
222225
"exitFromSQL": true,

package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@
1515
},
1616
"license": "MIT",
1717
"dependencies": {
18-
"@abaplint/cli": "^2.113.233",
18+
"@abaplint/cli": "^2.113.237",
1919
"@abaplint/database-pg": "^2.11.78",
2020
"@abaplint/database-sqlite": "^2.11.78",
21-
"@abaplint/runtime": "^2.12.7",
22-
"@abaplint/transpiler-cli": "^2.12.7",
21+
"@abaplint/runtime": "^2.12.9",
22+
"@abaplint/transpiler-cli": "^2.12.9",
2323
"0x": "^6.0.0"
2424
}
2525
}

src/abap/regex/cl_abap_matcher.clas.testclasses.abap

Lines changed: 0 additions & 15 deletions
This file was deleted.

src/abap/regex/cl_abap_regex.clas.abap

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@ CLASS cl_abap_regex DEFINITION PUBLIC.
1313

1414
METHODS create_matcher
1515
IMPORTING
16-
text TYPE clike
16+
text TYPE clike OPTIONAL
17+
table TYPE STANDARD TABLE OPTIONAL
1718
RETURNING
1819
VALUE(ro_matcher) TYPE REF TO cl_abap_matcher.
1920

@@ -45,6 +46,9 @@ CLASS cl_abap_regex IMPLEMENTATION.
4546
ENDMETHOD.
4647

4748
METHOD create_matcher.
49+
" this is a todo,
50+
ASSERT table IS INITIAL.
51+
4852
CREATE OBJECT ro_matcher
4953
EXPORTING
5054
pattern = mv_pattern

src/abap/regex/cl_abap_regex.clas.testclasses.abap

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ CLASS ltcl_test DEFINITION FOR TESTING DURATION SHORT RISK LEVEL HARMLESS FINAL.
1010
METHODS pcre FOR TESTING RAISING cx_static_check.
1111
METHODS replace_oo FOR TESTING RAISING cx_static_check.
1212
METHODS pcre_slashes FOR TESTING RAISING cx_static_check.
13+
METHODS digits FOR TESTING RAISING cx_static_check.
1314
METHODS classic_slashes FOR TESTING RAISING cx_static_check.
1415

1516
ENDCLASS.
@@ -218,4 +219,25 @@ CLASS ltcl_test IMPLEMENTATION.
218219

219220
ENDMETHOD.
220221

222+
METHOD digits.
223+
224+
DATA l_offset TYPE i.
225+
DATA l_counter TYPE string.
226+
DATA name TYPE string.
227+
DATA lo_regex TYPE REF TO cl_abap_regex.
228+
229+
name = 'notFound'.
230+
CREATE OBJECT lo_regex EXPORTING pattern = '([[:digit:]]*)$'.
231+
FIND FIRST OCCURRENCE OF REGEX lo_regex IN name SUBMATCHES l_counter MATCH OFFSET l_offset.
232+
233+
cl_abap_unit_assert=>assert_equals(
234+
act = l_counter
235+
exp = '' ).
236+
237+
cl_abap_unit_assert=>assert_equals(
238+
act = l_offset
239+
exp = 8 ).
240+
241+
ENDMETHOD.
242+
221243
ENDCLASS.

src/icon.type.abap

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@ CONSTANTS icon_total_left TYPE c LENGTH 4 VALUE 'ICON'.
104104
CONSTANTS icon_transport TYPE c LENGTH 4 VALUE 'ICON'.
105105
CONSTANTS icon_variable TYPE c LENGTH 4 VALUE 'ICON'.
106106
CONSTANTS icon_warehouse TYPE c LENGTH 4 VALUE 'ICON'.
107+
CONSTANTS icon_warning TYPE c LENGTH 4 VALUE 'ICON'.
107108
CONSTANTS icon_wd_context TYPE c LENGTH 4 VALUE 'ICON'.
108109
CONSTANTS icon_wd_table TYPE c LENGTH 4 VALUE 'ICON'.
109110
CONSTANTS icon_wf_workitem_completed TYPE c LENGTH 4 VALUE 'ICON'.

src/ixml/if_ixml_node.intf.abap

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,6 @@ INTERFACE if_ixml_node PUBLIC.
1515
RETURNING VALUE(rval) TYPE REF TO if_ixml_unknown,
1616
remove_node,
1717
get_parent RETURNING VALUE(val) TYPE REF TO if_ixml_node,
18-
replace_child IMPORTING
19-
new_child TYPE string
20-
old_child TYPE string,
2118
get_name RETURNING VALUE(val) TYPE string,
2219
get_depth RETURNING VALUE(val) TYPE i,
2320
is_leaf RETURNING VALUE(val) TYPE abap_bool,
@@ -26,8 +23,18 @@ INTERFACE if_ixml_node PUBLIC.
2623
get_type RETURNING VALUE(val) TYPE string,
2724
set_name IMPORTING name TYPE string,
2825
set_namespace_prefix IMPORTING val TYPE string,
29-
remove_child IMPORTING child TYPE REF TO if_ixml_node,
30-
set_value IMPORTING value TYPE string.
26+
remove_child IMPORTING child TYPE REF TO if_ixml_node.
27+
28+
METHODS replace_child
29+
IMPORTING
30+
new_child TYPE REF TO if_ixml_node
31+
old_child TYPE REF TO if_ixml_node.
32+
33+
METHODS set_value
34+
IMPORTING
35+
value TYPE string
36+
RETURNING
37+
VALUE(rval) TYPE i.
3138

3239
METHODS get_gid
3340
RETURNING

src/json/#ui2#cl_json.clas.testclasses.abap

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ CLASS ltcl_deserialize DEFINITION FOR TESTING RISK LEVEL HARMLESS DURATION SHORT
3333
METHODS refs_something FOR TESTING RAISING cx_static_check.
3434
METHODS raw_to_string FOR TESTING RAISING cx_static_check.
3535
METHODS string_to_raw FOR TESTING RAISING cx_static_check.
36+
METHODS top_tab FOR TESTING RAISING cx_static_check.
3637

3738
ENDCLASS.
3839

@@ -214,6 +215,30 @@ CLASS ltcl_deserialize IMPLEMENTATION.
214215
exp = 2 ).
215216
ENDMETHOD.
216217

218+
METHOD top_tab.
219+
220+
DATA lv_json TYPE string.
221+
TYPES: BEGIN OF ty,
222+
path TYPE string,
223+
filename TYPE string,
224+
sha1 TYPE c LENGTH 10,
225+
data TYPE xstring,
226+
END OF ty.
227+
DATA tab TYPE STANDARD TABLE OF ty WITH DEFAULT KEY.
228+
lv_json = '[{"path":"","filename":"","sha1":"","data":""}]'.
229+
230+
/ui2/cl_json=>deserialize(
231+
EXPORTING
232+
json = lv_json
233+
CHANGING
234+
data = tab ).
235+
236+
cl_abap_unit_assert=>assert_equals(
237+
act = lines( tab )
238+
exp = 1 ).
239+
240+
ENDMETHOD.
241+
217242
METHOD structure_string.
218243
DATA: BEGIN OF stru,
219244
foo TYPE string,

0 commit comments

Comments
 (0)