mirror of
https://github.com/abap2xlsx/abap2xlsx.git
synced 2025-05-05 22:07:30 +08:00
Merge branch 'main' into hvam/unit0511
This commit is contained in:
commit
f2303927c4
|
@ -846,7 +846,7 @@ CLASS zcl_excel_common IMPLEMENTATION.
|
||||||
lv_value = ip_value.
|
lv_value = ip_value.
|
||||||
|
|
||||||
|
|
||||||
FIND REGEX `\s|'` IN lv_value. " \s finds regular and white spaces
|
FIND REGEX `\s|'|-` IN lv_value. " \s finds regular and white spaces
|
||||||
IF sy-subrc = 0.
|
IF sy-subrc = 0.
|
||||||
REPLACE ALL OCCURRENCES OF `'` IN lv_value WITH `''`.
|
REPLACE ALL OCCURRENCES OF `'` IN lv_value WITH `''`.
|
||||||
CONCATENATE `'` lv_value `'` INTO lv_value .
|
CONCATENATE `'` lv_value `'` INTO lv_value .
|
||||||
|
|
|
@ -122,6 +122,12 @@ CLASS lcl_excel_common_test DEFINITION FOR TESTING
|
||||||
METHODS is_cell_in_range_upperside_out FOR TESTING.
|
METHODS is_cell_in_range_upperside_out FOR TESTING.
|
||||||
METHODS is_cell_in_range_rightside_out FOR TESTING.
|
METHODS is_cell_in_range_rightside_out FOR TESTING.
|
||||||
METHODS is_cell_in_range_lowerside_out FOR TESTING.
|
METHODS is_cell_in_range_lowerside_out FOR TESTING.
|
||||||
|
METHODS escape_string_whitespace1 FOR TESTING.
|
||||||
|
METHODS escape_string_whitespace2 FOR TESTING.
|
||||||
|
METHODS escape_string_whitespace3 FOR TESTING.
|
||||||
|
METHODS escape_string_quote FOR TESTING.
|
||||||
|
METHODS escape_string_hyphen FOR TESTING.
|
||||||
|
METHODS escape_string_regular FOR TESTING.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
@ -1597,4 +1603,88 @@ CLASS lcl_excel_common_test IMPLEMENTATION.
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
ENDMETHOD. "is_cell_in_range_lowerside_out.
|
ENDMETHOD. "is_cell_in_range_lowerside_out.
|
||||||
|
|
||||||
|
METHOD escape_string_hyphen.
|
||||||
|
DATA: name TYPE string,
|
||||||
|
escaped_name TYPE string.
|
||||||
|
|
||||||
|
name = `A-B`.
|
||||||
|
|
||||||
|
escaped_name = zcl_excel_common=>escape_string( name ).
|
||||||
|
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = escaped_name
|
||||||
|
exp = `'A-B'`
|
||||||
|
msg = 'Escaping - failed' ).
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
METHOD escape_string_quote.
|
||||||
|
DATA: name TYPE string,
|
||||||
|
escaped_name TYPE string.
|
||||||
|
|
||||||
|
name = `A'B`.
|
||||||
|
|
||||||
|
escaped_name = zcl_excel_common=>escape_string( name ).
|
||||||
|
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = escaped_name
|
||||||
|
exp = `'A''B'`
|
||||||
|
msg = `Escaping ' failed` ).
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
METHOD escape_string_regular.
|
||||||
|
DATA: name TYPE string,
|
||||||
|
escaped_name TYPE string.
|
||||||
|
|
||||||
|
name = `Ab1`.
|
||||||
|
|
||||||
|
escaped_name = zcl_excel_common=>escape_string( name ).
|
||||||
|
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = escaped_name
|
||||||
|
exp = `Ab1`
|
||||||
|
msg = 'Escaped for no reason' ).
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
METHOD escape_string_whitespace1.
|
||||||
|
DATA: name TYPE string,
|
||||||
|
escaped_name TYPE string.
|
||||||
|
|
||||||
|
name = `A B`.
|
||||||
|
|
||||||
|
escaped_name = zcl_excel_common=>escape_string( name ).
|
||||||
|
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = escaped_name
|
||||||
|
exp = `'A B'`
|
||||||
|
msg = `Escaping ' ' (space) failed` ).
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
METHOD escape_string_whitespace2.
|
||||||
|
DATA: name TYPE string,
|
||||||
|
escaped_name TYPE string.
|
||||||
|
|
||||||
|
name = `A` && cl_abap_char_utilities=>horizontal_tab && `B`.
|
||||||
|
|
||||||
|
escaped_name = zcl_excel_common=>escape_string( name ).
|
||||||
|
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = escaped_name
|
||||||
|
exp = `'A` && cl_abap_char_utilities=>horizontal_tab && `B'`
|
||||||
|
msg = `Escaping TAB failed` ).
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
METHOD escape_string_whitespace3.
|
||||||
|
DATA: name TYPE string,
|
||||||
|
escaped_name TYPE string.
|
||||||
|
|
||||||
|
name = `A` && cl_abap_char_utilities=>newline && `B`.
|
||||||
|
|
||||||
|
escaped_name = zcl_excel_common=>escape_string( name ).
|
||||||
|
|
||||||
|
cl_abap_unit_assert=>assert_equals( act = escaped_name
|
||||||
|
exp = `'A` && cl_abap_char_utilities=>newline && `B'`
|
||||||
|
msg = `Escaping LF failed` ).
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user