mirror of
https://github.com/abap2UI5/abap2UI5.git
synced 2025-04-29 21:42:45 +08:00
unit test (#211)
* fixes * examples * unit test * unit tests * abaplint fix * unit test * fix downport * abaplint fix
This commit is contained in:
parent
f37a67e64e
commit
65ff5e1ca2
|
@ -76,7 +76,7 @@ CLASS z2ui5_cl_app_demo_03 IMPLEMENTATION.
|
||||||
icon = '{ICON}'
|
icon = '{ICON}'
|
||||||
info = '{INFO}'
|
info = '{INFO}'
|
||||||
press = client->_event( 'TEST' )
|
press = client->_event( 'TEST' )
|
||||||
type = `Navigation`
|
" type = `Navigation`
|
||||||
selected = `{SELECTED}`
|
selected = `{SELECTED}`
|
||||||
).
|
).
|
||||||
|
|
||||||
|
|
|
@ -35,44 +35,6 @@ CLASS z2ui5_cl_app_demo_47 IMPLEMENTATION.
|
||||||
time = sy-uzeit.
|
time = sy-uzeit.
|
||||||
dec1 = -1 / 3.
|
dec1 = -1 / 3.
|
||||||
|
|
||||||
* /ui2/cl_json=>serialize(
|
|
||||||
* EXPORTING
|
|
||||||
* data = time
|
|
||||||
** compress =
|
|
||||||
** name =
|
|
||||||
** pretty_name =
|
|
||||||
** type_descr =
|
|
||||||
** assoc_arrays =
|
|
||||||
** ts_as_iso8601 =
|
|
||||||
** expand_includes =
|
|
||||||
** assoc_arrays_opt =
|
|
||||||
** numc_as_string =
|
|
||||||
** name_mappings =
|
|
||||||
** conversion_exits =
|
|
||||||
** format_output =
|
|
||||||
** hex_as_base64 =
|
|
||||||
* RECEIVING
|
|
||||||
* r_json = data(lv_json)
|
|
||||||
* ).
|
|
||||||
*
|
|
||||||
* data(lv_test) = conv string( lv_json ).
|
|
||||||
* lv_test = lv_test+1.
|
|
||||||
* lv_test = shift_right( val = lv_test sub = `"` ).
|
|
||||||
*
|
|
||||||
* /ui2/cl_json=>deserialize(
|
|
||||||
* EXPORTING
|
|
||||||
* json = lv_test
|
|
||||||
** jsonx =
|
|
||||||
** pretty_name =
|
|
||||||
** assoc_arrays =
|
|
||||||
** assoc_arrays_opt =
|
|
||||||
** name_mappings =
|
|
||||||
* conversion_exits = abap_true
|
|
||||||
** hex_as_base64 =
|
|
||||||
* CHANGING
|
|
||||||
* data = time2
|
|
||||||
* ).
|
|
||||||
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
CASE client->get( )-event.
|
CASE client->get( )-event.
|
||||||
|
|
102
src/00/z2ui5_cl_app_demo_48.clas.abap
Normal file
102
src/00/z2ui5_cl_app_demo_48.clas.abap
Normal file
|
@ -0,0 +1,102 @@
|
||||||
|
CLASS z2ui5_cl_app_demo_48 DEFINITION
|
||||||
|
PUBLIC
|
||||||
|
FINAL
|
||||||
|
CREATE PUBLIC .
|
||||||
|
|
||||||
|
PUBLIC SECTION.
|
||||||
|
INTERFACES z2ui5_if_app.
|
||||||
|
|
||||||
|
TYPES:
|
||||||
|
BEGIN OF ty_row,
|
||||||
|
title TYPE string,
|
||||||
|
value TYPE string,
|
||||||
|
descr TYPE string,
|
||||||
|
icon TYPE string,
|
||||||
|
info TYPE string,
|
||||||
|
highlight type string,
|
||||||
|
wrapCharLimit type i,
|
||||||
|
selected TYPE abap_bool,
|
||||||
|
checkbox TYPE abap_bool,
|
||||||
|
END OF ty_row.
|
||||||
|
|
||||||
|
DATA t_tab TYPE STANDARD TABLE OF ty_row WITH EMPTY KEY.
|
||||||
|
DATA check_initialized TYPE abap_bool.
|
||||||
|
|
||||||
|
PROTECTED SECTION.
|
||||||
|
PRIVATE SECTION.
|
||||||
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
CLASS z2ui5_cl_app_demo_48 IMPLEMENTATION.
|
||||||
|
|
||||||
|
METHOD z2ui5_if_app~main.
|
||||||
|
|
||||||
|
IF check_initialized = abap_false.
|
||||||
|
check_initialized = abap_true.
|
||||||
|
|
||||||
|
t_tab = VALUE #(
|
||||||
|
( title = 'Peter' info = 'Information' descr = 'this is a description1 1234567890 1234567890' icon = 'sap-icon://badge' highlight = 'Information' wrapCharLimit = '100' )
|
||||||
|
( title = 'Peter1' info = 'Success' descr = 'this is a description2 1234567890 1234567890' icon = 'sap-icon://favorite' highlight = 'Success' wrapCharLimit = '10')
|
||||||
|
( title = 'Peter2' info = 'Warning' descr = 'this is a description3 1234567890 1234567890' icon = 'sap-icon://employee' highlight = 'Warning' wrapCharLimit = '100')
|
||||||
|
( title = 'Peter3' info = 'Error' descr = 'this is a description4 1234567890 1234567890' icon = 'sap-icon://accept' highlight = 'Error' wrapCharLimit = '10' )
|
||||||
|
( title = 'Peter4' info = 'None' descr = 'this is a description5 1234567890 1234567890' icon = 'sap-icon://activities' highlight = 'None' wrapCharLimit = '10')
|
||||||
|
( title = 'Peter5' info = 'Information' descr = 'this is a description6 1234567890 1234567890' icon = 'sap-icon://account' highlight = 'Information' wrapCharLimit = '100' )
|
||||||
|
).
|
||||||
|
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
CASE client->get( )-event.
|
||||||
|
WHEN 'TEST'.
|
||||||
|
" DATA(lt_sel1) = t_tab.
|
||||||
|
client->popup_message_box( `Test` ).
|
||||||
|
|
||||||
|
WHEN 'SELCHANGE'.
|
||||||
|
DATA(lt_sel) = t_tab.
|
||||||
|
DELETE lt_sel WHERE selected = abap_false.
|
||||||
|
client->popup_message_box( `go to details for item ` && lt_sel[ 1 ]-title ).
|
||||||
|
|
||||||
|
|
||||||
|
WHEN 'BACK'.
|
||||||
|
client->nav_app_leave( client->get_app( client->get( )-id_prev_app_stack ) ).
|
||||||
|
ENDCASE.
|
||||||
|
|
||||||
|
DATA(page) = z2ui5_cl_xml_view=>factory( )->shell(
|
||||||
|
)->page(
|
||||||
|
title = 'abap2UI5 - List'
|
||||||
|
navbuttonpress = client->_event( 'BACK' )
|
||||||
|
shownavbutton = abap_true
|
||||||
|
)->header_content(
|
||||||
|
)->link(
|
||||||
|
text = 'Source_Code' target = '_blank'
|
||||||
|
href = z2ui5_cl_xml_view=>hlp_get_source_code_url( app = me get = client->get( ) )
|
||||||
|
)->get_parent( ).
|
||||||
|
|
||||||
|
page->list(
|
||||||
|
headertext = 'List Ouput'
|
||||||
|
items = client->_bind( t_tab )
|
||||||
|
mode = `SingleSelectMaster`
|
||||||
|
selectionchange = client->_event( 'SELCHANGE' )
|
||||||
|
)->_generic(
|
||||||
|
name = `StandardListItem`
|
||||||
|
t_prop = VALUE #(
|
||||||
|
( n = `title` v = '{TITLE}' )
|
||||||
|
( n = `description` v = '{DESCR}' )
|
||||||
|
( n = `icon` v = '{ICON}' )
|
||||||
|
( n = `iconInset` v = 'false' )
|
||||||
|
( n = `highlight` v = '{HIGHLIGHT}' )
|
||||||
|
( n = `info` v = '{INFO}' )
|
||||||
|
( n = `infoState` v = '{HIGHLIGHT}' )
|
||||||
|
( n = `infoStateInverted` v = 'true' )
|
||||||
|
( n = 'type' v = `Detail` )
|
||||||
|
( n = 'wrapping' v = `true` )
|
||||||
|
( n = 'wrapCharLimit' v = `{WRAPCHARLIMIT}` )
|
||||||
|
( n = 'selected' v = `{SELECTED}` )
|
||||||
|
( n = 'detailPress' v = client->_event( 'TEST' ) )
|
||||||
|
|
||||||
|
) ).
|
||||||
|
client->set_next( VALUE #( xml_main = page->get_root( )->xml_get( ) ) ).
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
ENDCLASS.
|
16
src/00/z2ui5_cl_app_demo_48.clas.xml
Normal file
16
src/00/z2ui5_cl_app_demo_48.clas.xml
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
<?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>Z2UI5_CL_APP_DEMO_48</CLSNAME>
|
||||||
|
<LANGU>E</LANGU>
|
||||||
|
<DESCRIPT>tab - list test</DESCRIPT>
|
||||||
|
<STATE>1</STATE>
|
||||||
|
<CLSCCINCL>X</CLSCCINCL>
|
||||||
|
<FIXPT>X</FIXPT>
|
||||||
|
<UNICODE>X</UNICODE>
|
||||||
|
</VSEOCLASS>
|
||||||
|
</asx:values>
|
||||||
|
</asx:abap>
|
||||||
|
</abapGit>
|
|
@ -6,6 +6,7 @@ CLASS z2ui5_lcl_utility DEFINITION INHERITING FROM cx_no_check.
|
||||||
BEGIN OF ty_attri,
|
BEGIN OF ty_attri,
|
||||||
name TYPE string,
|
name TYPE string,
|
||||||
type_kind TYPE string,
|
type_kind TYPE string,
|
||||||
|
type TYPE string,
|
||||||
bind_type TYPE string,
|
bind_type TYPE string,
|
||||||
data_stringify TYPE string,
|
data_stringify TYPE string,
|
||||||
gen_type_kind TYPE string,
|
gen_type_kind TYPE string,
|
||||||
|
@ -282,7 +283,21 @@ CLASS z2ui5_lcl_utility IMPLEMENTATION.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
LOOP AT lt_attri INTO ls_attri.
|
LOOP AT lt_attri INTO ls_attri.
|
||||||
APPEND CORRESPONDING #( ls_attri ) TO result.
|
|
||||||
|
DATA(ls_attri2) = VALUE ty_attri( ).
|
||||||
|
ls_attri2 = CORRESPONDING #( ls_attri ).
|
||||||
|
|
||||||
|
FIELD-SYMBOLS <any> TYPE any.
|
||||||
|
UNASSIGN <any>.
|
||||||
|
DATA(lv_assign) = `IO_APP->` && ls_attri-name.
|
||||||
|
ASSIGN (lv_assign) TO <any>.
|
||||||
|
DATA(lo_descr) = cl_abap_datadescr=>describe_by_data( <any> ).
|
||||||
|
CASE lo_descr->kind.
|
||||||
|
WHEN lo_descr->kind_elem.
|
||||||
|
ls_attri2-type = CAST cl_abap_elemdescr( lo_descr )->get_relative_name( ).
|
||||||
|
ENDCASE.
|
||||||
|
|
||||||
|
APPEND ls_attri2 TO result.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
@ -346,17 +361,15 @@ CLASS z2ui5_lcl_utility IMPLEMENTATION.
|
||||||
|
|
||||||
CLEAR t_result.
|
CLEAR t_result.
|
||||||
|
|
||||||
DATA lr_row TYPE REF TO data.
|
DATA(lo_tab) = CAST cl_abap_tabledescr( cl_abap_datadescr=>describe_by_data( t_result ) ).
|
||||||
CREATE DATA lr_row LIKE LINE OF t_result.
|
DATA(lo_struc) = CAST cl_abap_structdescr( lo_tab->get_table_line_type( ) ).
|
||||||
ASSIGN lr_row->* TO FIELD-SYMBOL(<row>).
|
|
||||||
|
|
||||||
DATA(lo_descr) = cl_abap_datadescr=>describe_by_data( <row> ).
|
|
||||||
DATA(lo_struc) = CAST cl_abap_structdescr( lo_descr ).
|
|
||||||
DATA(lt_components) = lo_struc->get_components( ).
|
DATA(lt_components) = lo_struc->get_components( ).
|
||||||
|
|
||||||
LOOP AT <lt_from> INTO DATA(lr_from).
|
LOOP AT <lt_from> INTO DATA(lr_from).
|
||||||
|
|
||||||
CLEAR <row>.
|
DATA lr_row TYPE REF TO data.
|
||||||
|
CREATE DATA lr_row LIKE LINE OF t_result.
|
||||||
|
ASSIGN lr_row->* TO FIELD-SYMBOL(<row>).
|
||||||
|
|
||||||
ASSIGN lr_from->* TO FIELD-SYMBOL(<row_ui5>).
|
ASSIGN lr_from->* TO FIELD-SYMBOL(<row_ui5>).
|
||||||
raise( when = xsdbool( sy-subrc <> 0 ) ).
|
raise( when = xsdbool( sy-subrc <> 0 ) ).
|
||||||
|
@ -1337,22 +1350,29 @@ CLASS z2ui5_lcl_fw_handler IMPLEMENTATION.
|
||||||
EXPORTING ir_tab_from = lo_model->get_attribute( lr_attri->name )->mr_actual
|
EXPORTING ir_tab_from = lo_model->get_attribute( lr_attri->name )->mr_actual
|
||||||
IMPORTING t_result = <attribute> ).
|
IMPORTING t_result = <attribute> ).
|
||||||
|
|
||||||
WHEN 'D' OR 'T' OR 'C'.
|
WHEN OTHERS.
|
||||||
|
|
||||||
DATA(lo_attri) = lo_model->get_attribute( lr_attri->name ).
|
DATA(lo_attri) = lo_model->get_attribute( lr_attri->name ).
|
||||||
FIELD-SYMBOLS <val> TYPE any.
|
FIELD-SYMBOLS <val> TYPE any.
|
||||||
ASSIGN lo_attri->mr_actual->* TO <val>.
|
ASSIGN lo_attri->mr_actual->* TO <val>.
|
||||||
/ui2/cl_json=>deserialize(
|
|
||||||
EXPORTING
|
|
||||||
json = `"` && <val> && `"`
|
|
||||||
CHANGING
|
|
||||||
data = <attribute>
|
|
||||||
).
|
|
||||||
|
|
||||||
WHEN OTHERS.
|
|
||||||
lo_attri = lo_model->get_attribute( lr_attri->name ).
|
|
||||||
ASSIGN lo_attri->mr_actual->* TO <val>.
|
|
||||||
<attribute> = <val>.
|
|
||||||
|
|
||||||
|
CASE lr_attri->type_kind.
|
||||||
|
WHEN 'D' OR 'T'.
|
||||||
|
/ui2/cl_json=>deserialize(
|
||||||
|
EXPORTING
|
||||||
|
json = `"` && <val> && `"`
|
||||||
|
CHANGING
|
||||||
|
data = <attribute> ).
|
||||||
|
WHEN 'C'.
|
||||||
|
CASE lr_attri->type.
|
||||||
|
WHEN `ABAP_BOOL` OR `ABAP_BOOLEAN` OR `XSDBOOLEAN`.
|
||||||
|
<attribute> = xsdbool( <val> = `true` ).
|
||||||
|
WHEN OTHERS.
|
||||||
|
<attribute> = <val>.
|
||||||
|
ENDCASE.
|
||||||
|
WHEN OTHERS.
|
||||||
|
<attribute> = <val>.
|
||||||
|
ENDCASE.
|
||||||
ENDCASE.
|
ENDCASE.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
|
@ -1467,12 +1487,8 @@ CLASS z2ui5_lcl_fw_handler IMPLEMENTATION.
|
||||||
|
|
||||||
IF check_gen_data = abap_true.
|
IF check_gen_data = abap_true.
|
||||||
TRY.
|
TRY.
|
||||||
|
|
||||||
DATA lr_ref2 TYPE REF TO data.
|
|
||||||
GET REFERENCE OF <attribute> INTO lr_ref2.
|
|
||||||
|
|
||||||
FIELD-SYMBOLS <field> TYPE any.
|
FIELD-SYMBOLS <field> TYPE any.
|
||||||
ASSIGN lr_ref2->* TO <field>.
|
ASSIGN lr_ref->* TO <field>.
|
||||||
lr_ref = CAST data( <field> ).
|
lr_ref = CAST data( <field> ).
|
||||||
IF lr_attri->gen_type IS INITIAL.
|
IF lr_attri->gen_type IS INITIAL.
|
||||||
FIELD-SYMBOLS <field2> TYPE any.
|
FIELD-SYMBOLS <field2> TYPE any.
|
||||||
|
@ -1570,8 +1586,9 @@ CLASS z2ui5_lcl_fw_handler IMPLEMENTATION.
|
||||||
CONTINUE.
|
CONTINUE.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
DATA(lo_actual) = COND #( WHEN lr_attri->bind_type = cs_bind_type-one_way THEN r_view_model
|
DATA(lo_actual) = COND #( WHEN lr_attri->bind_type = cs_bind_type-one_way
|
||||||
ELSE lo_update ).
|
THEN r_view_model
|
||||||
|
ELSE lo_update ).
|
||||||
|
|
||||||
FIELD-SYMBOLS <attribute> TYPE any.
|
FIELD-SYMBOLS <attribute> TYPE any.
|
||||||
DATA(lv_name) = c_prefix && to_upper( lr_attri->name ).
|
DATA(lv_name) = c_prefix && to_upper( lr_attri->name ).
|
||||||
|
@ -1586,33 +1603,29 @@ CLASS z2ui5_lcl_fw_handler IMPLEMENTATION.
|
||||||
|
|
||||||
CASE lr_attri->type_kind.
|
CASE lr_attri->type_kind.
|
||||||
|
|
||||||
" WHEN `g` OR `D` OR `T` OR `C`.
|
|
||||||
" lo_actual->add_attribute( n = lr_attri->name
|
|
||||||
" v = z2ui5_lcl_utility=>get_abap_2_json( <attribute> )
|
|
||||||
" apos_active = abap_false ).
|
|
||||||
|
|
||||||
" WHEN `P`.
|
|
||||||
" lo_actual->add_attribute( n = lr_attri->name
|
|
||||||
" v = /ui2/cl_json=>serialize( <attribute> )
|
|
||||||
" apos_active = abap_false ).
|
|
||||||
|
|
||||||
" WHEN `I`.
|
|
||||||
" lo_actual->add_attribute( n = lr_attri->name
|
|
||||||
" " v = <attribute>
|
|
||||||
" v = CONV string( <attribute> )
|
|
||||||
" apos_active = abap_false ).
|
|
||||||
|
|
||||||
WHEN `h`.
|
WHEN `h`.
|
||||||
lo_actual->add_attribute( n = lr_attri->name
|
lo_actual->add_attribute( n = lr_attri->name
|
||||||
v = z2ui5_lcl_utility=>trans_any_2_json( <attribute> )
|
v = z2ui5_lcl_utility=>trans_any_2_json( <attribute> )
|
||||||
apos_active = abap_false ).
|
apos_active = abap_false ).
|
||||||
|
|
||||||
WHEN OTHERS.
|
WHEN OTHERS.
|
||||||
lo_actual->add_attribute(
|
|
||||||
n = lr_attri->name
|
|
||||||
v = /ui2/cl_json=>serialize( <attribute> )
|
|
||||||
apos_active = abap_false ).
|
|
||||||
|
|
||||||
|
CASE lr_attri->type.
|
||||||
|
|
||||||
|
WHEN `ABAP_BOOL` OR `ABAP_BOOLEAN` OR `XSDBOOLEAN`.
|
||||||
|
|
||||||
|
lo_actual->add_attribute(
|
||||||
|
n = lr_attri->name
|
||||||
|
v = SWITCH #( <attribute> WHEN abap_true THEN `true` ELSE `false` )
|
||||||
|
apos_active = abap_false ).
|
||||||
|
|
||||||
|
WHEN OTHERS.
|
||||||
|
|
||||||
|
lo_actual->add_attribute(
|
||||||
|
n = lr_attri->name
|
||||||
|
v = /ui2/cl_json=>serialize( <attribute> )
|
||||||
|
apos_active = abap_false ).
|
||||||
|
ENDCASE.
|
||||||
ENDCASE.
|
ENDCASE.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
|
|
|
@ -10,9 +10,41 @@ CLASS ltcl_unit_01_json DEFINITION FINAL FOR TESTING
|
||||||
METHODS test_json_struc FOR TESTING RAISING cx_static_check.
|
METHODS test_json_struc FOR TESTING RAISING cx_static_check.
|
||||||
METHODS test_json_trans FOR TESTING RAISING cx_static_check.
|
METHODS test_json_trans FOR TESTING RAISING cx_static_check.
|
||||||
METHODS test_json_trans_gen FOR TESTING RAISING cx_static_check.
|
METHODS test_json_trans_gen FOR TESTING RAISING cx_static_check.
|
||||||
METHODS test_utility FOR TESTING RAISING cx_static_check.
|
METHODS test_util_uuid_session FOR TESTING RAISING cx_static_check.
|
||||||
|
METHODS test_util_attri_by_ref FOR TESTING RAISING cx_static_check.
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
CLASS ltcl_unit_04_deep_data DEFINITION FINAL FOR TESTING
|
||||||
|
DURATION SHORT
|
||||||
|
RISK LEVEL HARMLESS.
|
||||||
|
|
||||||
|
PUBLIC SECTION.
|
||||||
|
INTERFACES z2ui5_if_app.
|
||||||
|
|
||||||
|
DATA check_initialized TYPE abap_bool.
|
||||||
|
|
||||||
|
TYPES:
|
||||||
|
BEGIN OF ty_row,
|
||||||
|
title TYPE string,
|
||||||
|
value TYPE string,
|
||||||
|
descr TYPE string,
|
||||||
|
icon TYPE string,
|
||||||
|
info TYPE string,
|
||||||
|
selected TYPE abap_bool,
|
||||||
|
checkbox TYPE abap_bool,
|
||||||
|
END OF ty_row.
|
||||||
|
|
||||||
|
CLASS-DATA t_tab TYPE STANDARD TABLE OF ty_row WITH EMPTY KEY.
|
||||||
|
|
||||||
|
CLASS-DATA sv_status TYPE string.
|
||||||
|
|
||||||
|
PRIVATE SECTION.
|
||||||
|
METHODS test_app_deep_data FOR TESTING RAISING cx_static_check.
|
||||||
|
METHODS test_app_deep_data_change FOR TESTING RAISING cx_static_check.
|
||||||
|
METHODS test_app_all FOR TESTING RAISING cx_static_check.
|
||||||
|
ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS ltcl_unit_01_json IMPLEMENTATION.
|
CLASS ltcl_unit_01_json IMPLEMENTATION.
|
||||||
|
|
||||||
|
@ -137,7 +169,27 @@ CLASS ltcl_unit_01_json IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD test_utility.
|
METHOD test_util_attri_by_ref.
|
||||||
|
|
||||||
|
DATA(lo_app) = NEW ltcl_unit_04_deep_data( ).
|
||||||
|
|
||||||
|
DATA(lt_attri) = z2ui5_lcl_utility=>get_t_attri_by_ref( lo_app ).
|
||||||
|
|
||||||
|
DATA(lt_test) = VALUE z2ui5_lcl_utility=>ty_t_attri(
|
||||||
|
( name = `Z2UI5_IF_APP~ID` type_kind = `g` type = `STRING` bind_type = `` data_stringify = `` gen_type_kind = `` gen_type = `` gen_kind = `` )
|
||||||
|
( name = `CHECK_INITIALIZED` type_kind = `C` type = `ABAP_BOOL` bind_type = `` data_stringify = `` gen_type_kind = `` gen_type = `` gen_kind = `` )
|
||||||
|
( name = `SV_STATUS` type_kind = `g` type = `STRING` bind_type = `` data_stringify = `` gen_type_kind = `` gen_type = `` gen_kind = `` )
|
||||||
|
( name = `T_TAB` type_kind = `h` type = `` bind_type = `` data_stringify = `` gen_type_kind = `` gen_type = `` gen_kind = `` )
|
||||||
|
).
|
||||||
|
|
||||||
|
IF lt_test <> lt_attri.
|
||||||
|
cl_abap_unit_assert=>fail( msg = 'utility - get t_attri table wrong' quit = 5 ).
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
|
METHOD test_util_uuid_session.
|
||||||
|
|
||||||
DATA(lv_one) = z2ui5_lcl_utility=>get_uuid_session( ).
|
DATA(lv_one) = z2ui5_lcl_utility=>get_uuid_session( ).
|
||||||
DATA(lv_two) = z2ui5_lcl_utility=>get_uuid_session( ).
|
DATA(lv_two) = z2ui5_lcl_utility=>get_uuid_session( ).
|
||||||
|
@ -860,37 +912,6 @@ CLASS ltcl_unit_03_app_ajax IMPLEMENTATION.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS ltcl_unit_04_deep_data DEFINITION FINAL FOR TESTING
|
|
||||||
DURATION SHORT
|
|
||||||
RISK LEVEL HARMLESS.
|
|
||||||
|
|
||||||
PUBLIC SECTION.
|
|
||||||
INTERFACES z2ui5_if_app.
|
|
||||||
|
|
||||||
DATA check_initialized TYPE abap_bool.
|
|
||||||
|
|
||||||
TYPES:
|
|
||||||
BEGIN OF ty_row,
|
|
||||||
title TYPE string,
|
|
||||||
value TYPE string,
|
|
||||||
descr TYPE string,
|
|
||||||
icon TYPE string,
|
|
||||||
info TYPE string,
|
|
||||||
selected TYPE abap_bool,
|
|
||||||
checkbox TYPE abap_bool,
|
|
||||||
END OF ty_row.
|
|
||||||
|
|
||||||
CLASS-DATA t_tab TYPE STANDARD TABLE OF ty_row WITH EMPTY KEY.
|
|
||||||
|
|
||||||
CLASS-DATA sv_status TYPE string.
|
|
||||||
|
|
||||||
PRIVATE SECTION.
|
|
||||||
METHODS test_app_deep_data FOR TESTING RAISING cx_static_check.
|
|
||||||
METHODS test_app_deep_data_change FOR TESTING RAISING cx_static_check.
|
|
||||||
METHODS test_app_all FOR TESTING RAISING cx_static_check.
|
|
||||||
ENDCLASS.
|
|
||||||
|
|
||||||
|
|
||||||
CLASS ltcl_unit_04_deep_data IMPLEMENTATION.
|
CLASS ltcl_unit_04_deep_data IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
|
@ -1107,4 +1128,5 @@ CLASS ltcl_unit_04_deep_data IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user