refactoring tests

This commit is contained in:
19ddb071-87e3-4bdd-9eee-59bb460e1d62 2023-06-15 16:56:48 +00:00
parent 88328e3762
commit 864d054de1

View File

@ -2,8 +2,6 @@ CLASS ltcl_unit_01_json DEFINITION FINAL FOR TESTING
DURATION SHORT
RISK LEVEL HARMLESS.
PUBLIC SECTION.
PRIVATE SECTION.
METHODS test_json_attri FOR TESTING RAISING cx_static_check.
METHODS test_json_object FOR TESTING RAISING cx_static_check.
@ -12,14 +10,12 @@ CLASS ltcl_unit_01_json DEFINITION FINAL FOR TESTING
METHODS test_json_trans_gen FOR TESTING RAISING cx_static_check.
ENDCLASS.
CLASS ltcl_unit_01_utility DEFINITION FINAL FOR TESTING
DURATION SHORT
RISK LEVEL HARMLESS.
PUBLIC SECTION.
PRIVATE SECTION.
METHODS test_util_uuid_session FOR TESTING RAISING cx_static_check.
METHODS test_util_04_attri_by_ref FOR TESTING RAISING cx_static_check.
METHODS test_util_01_get_t_attri FOR TESTING RAISING cx_static_check.
@ -27,9 +23,6 @@ CLASS ltcl_unit_01_utility DEFINITION FINAL FOR TESTING
ENDCLASS.
CLASS ltcl_unit_04_deep_data DEFINITION FINAL FOR TESTING
DURATION SHORT
RISK LEVEL HARMLESS.
@ -60,11 +53,8 @@ CLASS ltcl_unit_04_deep_data DEFINITION FINAL FOR TESTING
ENDCLASS.
CLASS ltcl_unit_01_json IMPLEMENTATION.
METHOD test_json_attri.
DATA(lo_tree) = NEW z2ui5_lcl_utility_tree_json( ).
lo_tree->add_attribute( n = `AAA` v = `BBB` ).
@ -73,11 +63,9 @@ CLASS ltcl_unit_01_json IMPLEMENTATION.
IF `{"AAA":"BBB"}` <> lv_result.
cl_abap_unit_assert=>fail( 'json tree - wrong stringify attributes' ).
ENDIF.
ENDMETHOD.
METHOD test_json_object.
DATA(lo_tree) = NEW z2ui5_lcl_utility_tree_json( ).
lo_tree->add_attribute_object( `CCC`
@ -87,11 +75,9 @@ CLASS ltcl_unit_01_json IMPLEMENTATION.
IF `{"CCC":{"AAA":"BBB"}}` <> lv_result.
cl_abap_unit_assert=>fail( 'json tree - wrong stringify object attributes' ).
ENDIF.
ENDMETHOD.
METHOD test_json_struc.
DATA(lo_tree) = NEW z2ui5_lcl_utility_tree_json( ).
TYPES:
@ -109,11 +95,9 @@ CLASS ltcl_unit_01_json IMPLEMENTATION.
IF `{"CCC":{"COMP1":"AAA","COMP2":"BBB"}}` <> lv_result.
cl_abap_unit_assert=>fail( 'json tree - wrong stringify structure' ).
ENDIF.
ENDMETHOD.
METHOD test_json_trans.
TYPES:
BEGIN OF ty_row,
title TYPE string,
@ -122,30 +106,22 @@ CLASS ltcl_unit_01_json IMPLEMENTATION.
END OF ty_row.
TYPES ty_t_tab TYPE STANDARD TABLE OF ty_row WITH EMPTY KEY.
DATA(lt_tab) = VALUE ty_t_tab(
( title = 'Test' value = 'this is a description' selected = abap_true )
( title = 'Test2' value = 'this is a new descr' selected = abap_false )
).
DATA(lt_tab) = VALUE ty_t_tab( ( title = 'Test' value = 'this is a description' selected = abap_true )
( title = 'Test2' value = 'this is a new descr' selected = abap_false ) ).
DATA(lt_tab2) = VALUE ty_t_tab( ).
DATA(lv_tab) = z2ui5_lcl_utility=>trans_any_2_json( lt_tab ).
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_tab
CHANGING
data = lt_tab2
).
/ui2/cl_json=>deserialize( EXPORTING json = lv_tab
CHANGING data = lt_tab2 ).
IF lt_tab <> lt_tab2.
cl_abap_unit_assert=>fail( msg = 'json serial - /ui2/cl_json wrong simple table' quit = 5 ).
ENDIF.
ENDMETHOD.
METHOD test_json_trans_gen.
TYPES:
BEGIN OF ty_row,
title TYPE string,
@ -154,44 +130,29 @@ CLASS ltcl_unit_01_json IMPLEMENTATION.
END OF ty_row.
TYPES ty_t_tab TYPE STANDARD TABLE OF ty_row WITH EMPTY KEY.
DATA(lt_tab) = VALUE ty_t_tab(
( title = 'Test' value = 'this is a description' selected = abap_true )
( title = 'Test2' value = 'this is a new descr' selected = abap_false )
).
DATA(lt_tab) = VALUE ty_t_tab( ( title = 'Test' value = 'this is a description' selected = abap_true )
( title = 'Test2' value = 'this is a new descr' selected = abap_false ) ).
DATA(lt_tab2) = VALUE ty_t_tab( ).
DATA(lv_tab) = z2ui5_lcl_utility=>trans_any_2_json( lt_tab ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_tab
CHANGING
data = lo_data
).
/ui2/cl_json=>deserialize( EXPORTING json = lv_tab
CHANGING data = lo_data ).
z2ui5_lcl_utility=>trans_ref_tab_2_tab(
EXPORTING
ir_tab_from = lo_data
IMPORTING
t_result = lt_tab2
).
z2ui5_lcl_utility=>trans_ref_tab_2_tab( EXPORTING ir_tab_from = lo_data
IMPORTING t_result = lt_tab2 ).
IF lt_tab <> lt_tab2.
cl_abap_unit_assert=>fail( msg = 'json serial - /ui2/cl_json wrong generic table' quit = 5 ).
ENDIF.
ENDMETHOD.
ENDCLASS.
CLASS ltcl_unit_01_utility IMPLEMENTATION.
METHOD test_util_04_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 ).
@ -206,12 +167,9 @@ CLASS ltcl_unit_01_utility IMPLEMENTATION.
* 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_two) = z2ui5_lcl_utility=>get_uuid_session( ).
@ -222,11 +180,9 @@ CLASS ltcl_unit_01_utility IMPLEMENTATION.
IF lv_two <> `2`.
cl_abap_unit_assert=>fail( msg = 'utility - create session id' quit = 5 ).
ENDIF.
ENDMETHOD.
METHOD test_util_02_get_attri.
DATA(lo_app) = NEW ltcl_unit_04_deep_data( ).
lo_app->sv_status = `ABC`.
@ -237,30 +193,33 @@ CLASS ltcl_unit_01_utility IMPLEMENTATION.
IF <any> <> `ABC`.
cl_abap_unit_assert=>fail( msg = 'utility - assign of attribute from outside not working' quit = 5 ).
ENDIF.
ENDMETHOD.
METHOD test_util_01_get_t_attri.
DATA(lo_app) = NEW ltcl_unit_04_deep_data( ).
DATA(lt_attri) = CAST cl_abap_classdescr( cl_abap_objectdescr=>describe_by_object_ref( lo_app ) )->attributes.
DATA(lt_test) = VALUE abap_attrdescr_tab(
( length = '8' decimals = '0' name = 'Z2UI5_IF_APP~ID' type_kind = 'g' visibility = 'U' is_interface = 'X' is_inherited = '' is_class = '' is_constant = '' is_virtual = '' is_read_only = '' alias_for = '' )
( length = '2' decimals = '0' name = 'CHECK_INITIALIZED' type_kind = 'C' visibility = 'U' is_interface = '' is_inherited = '' is_class = '' is_constant = '' is_virtual = '' is_read_only = '' alias_for = '' )
( length = '8' decimals = '0' name = 'SV_STATUS' type_kind = 'g' visibility = 'U' is_interface = '' is_inherited = '' is_class = 'X' is_constant = '' is_virtual = '' is_read_only = '' alias_for = '' )
( length = '8' decimals = '0' name = 'T_TAB' type_kind = 'h' visibility = 'U' is_interface = '' is_inherited = '' is_class = 'X' is_constant = '' is_virtual = '' is_read_only = '' alias_for = '' )
).
decimals = '0'
visibility = 'U'
is_inherited = ''
is_constant = ''
is_virtual = ''
is_read_only = ''
alias_for = ''
( length = '8' name = 'Z2UI5_IF_APP~ID' type_kind = 'g' is_interface = 'X' is_class = '' )
( length = '2' name = 'CHECK_INITIALIZED' type_kind = 'C' is_interface = '' is_class = '' )
( length = '8' name = 'SV_STATUS' type_kind = 'g' is_interface = '' is_class = 'X' )
( length = '8' name = 'T_TAB' type_kind = 'h' is_interface = '' is_class = 'X' ) ).
IF lt_test <> lt_attri.
cl_abap_unit_assert=>fail( msg = 'utility - get abap_attrdescr_tab table wrong' quit = 5 ).
ENDIF.
ENDMETHOD.
ENDCLASS.
CLASS ltcl_unit_02_app_start DEFINITION FINAL FOR TESTING
DURATION SHORT
RISK LEVEL HARMLESS.
@ -292,23 +251,17 @@ ENDCLASS.
CLASS ltcl_unit_02_app_start IMPLEMENTATION.
METHOD test_index_html.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path' value = 'dummy' ) )
).
z2ui5_cl_http_handler=>client = VALUE #( t_header = VALUE #( ( name = '~path' value = 'dummy' ) ) ).
DATA(lv_index_html) = z2ui5_cl_http_handler=>http_get( ).
IF lv_index_html IS INITIAL.
cl_abap_unit_assert=>fail( 'HTTP GET - index html initial' ).
ENDIF.
ENDMETHOD.
METHOD z2ui5_if_app~main.
IF check_initialized = abap_false.
check_initialized = abap_true.
product = 'tomato'.
@ -324,24 +277,18 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
ENDCASE.
IF sv_state = 'TEST_MESSAGE_BOX'.
client->popup_message_box(
text = 'test message box'
).
client->popup_message_box( text = 'test message box' ).
ENDIF.
IF sv_state = 'TEST_MESSAGE_TOAST'.
client->popup_message_toast(
text = 'test message toast'
).
client->popup_message_toast( text = 'test message toast' ).
ENDIF.
CASE sv_state.
WHEN 'TEST_ONE_WAY'.
client->set_next( VALUE #( xml_main = z2ui5_cl_xml_view=>factory( )->shell(
)->page(
title = 'abap2UI5 - First Example'
)->page( title = 'abap2UI5 - First Example'
navbuttonpress = client->_event( 'BACK' )
shownavbutton = abap_true
)->simple_form( title = 'Form Title' editable = abap_true
@ -350,41 +297,32 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
)->label( 'quantity'
)->input( client->_bind_one( quantity )
)->label( 'product'
)->input(
value = product
)->input( value = product
enabled = abap_false
)->button(
text = 'post'
)->button( text = 'post'
press = client->_event( 'BUTTON_POST' )
)->get_root( )->xml_get( ) ) ).
WHEN 'TEST_POPUP'.
client->set_next( VALUE #( xml_popup = z2ui5_cl_xml_view=>factory(
)->dialog(
title = 'abap2UI5 - First Example'
)->dialog( title = 'abap2UI5 - First Example'
)->simple_form( title = 'Form Title' editable = abap_true
)->content( 'form'
)->title( 'Input'
)->label( 'quantity'
)->input( client->_bind_one( quantity )
)->label( 'product'
)->input(
value = product
)->input( value = product
enabled = abap_false
)->button(
text = 'post'
)->button( text = 'post'
press = client->_event( 'BUTTON_POST' )
)->get_root( )->xml_get( ) ) ).
WHEN 'TEST_TIMER'.
client->set_next( VALUE #(
s_timer = VALUE #(
event_finished = 'TIMER_FINISHED'
interval_ms = `500`
)
client->set_next( VALUE #( s_timer = VALUE #( event_finished = 'TIMER_FINISHED'
interval_ms = `500` )
xml_main = z2ui5_cl_xml_view=>factory( )->shell(
)->page(
title = 'abap2UI5 - First Example'
)->page( title = 'abap2UI5 - First Example'
navbuttonpress = client->_event( 'BACK' )
shownavbutton = abap_true
)->simple_form( title = 'Form Title' editable = abap_true
@ -393,18 +331,15 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
)->label( 'quantity'
)->input( client->_bind( quantity )
)->label( 'product'
)->input(
value = product
)->input( value = product
enabled = abap_false
)->button(
text = 'post'
)->button( text = 'post'
press = client->_event( 'BUTTON_POST' )
)->get_root( )->xml_get( ) ) ).
WHEN OTHERS.
client->set_next( VALUE #( xml_main = z2ui5_cl_xml_view=>factory( )->shell(
)->page(
title = 'abap2UI5 - First Example'
)->page( title = 'abap2UI5 - First Example'
navbuttonpress = client->_event( 'BACK' )
shownavbutton = abap_true
)->simple_form( title = 'Form Title' editable = abap_true
@ -413,11 +348,9 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
)->label( 'quantity'
)->input( client->_bind( quantity )
)->label( 'product'
)->input(
value = product
)->input( value = product
enabled = abap_false
)->button(
text = 'post'
)->button( text = 'post'
press = client->_event( 'BUTTON_POST' )
)->get_root( )->xml_get( ) ) ).
@ -425,14 +358,12 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
IF sv_state = 'TEST_SCROLL_CURSOR'.
client->set_next( VALUE #(
xml_main = `test`
client->set_next(
VALUE #( xml_main = `test`
s_cursor = VALUE #( id = 'id_text2' cursorpos = '5' selectionstart = '5' selectionend = '10' )
t_scroll = VALUE #(
( name = 'id_page' value = '99999' )
( name = 'id_text3' value = '99999' )
)
) ).
t_scroll = VALUE #( value = '99999'
( name = 'id_page' )
( name = 'id_text3' ) ) ) ).
ENDIF.
@ -447,24 +378,18 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
CLEAR sv_state.
client->nav_app_leave( client->get_app( client->get( )-id_prev_app ) ).
ENDIF.
ENDMETHOD.
METHOD test_xml_view.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) )
).
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) ) ).
sv_state = ``.
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
FIELD-SYMBOLS <val> TYPE any.
UNASSIGN <val>.
@ -474,24 +399,18 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
IF <val>(9) <> `<mvc:View`.
cl_abap_unit_assert=>fail( msg = 'xml view - intital view wrong' quit = 5 ).
ENDIF.
ENDMETHOD.
METHOD test_id.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) )
).
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) ) ).
sv_state = ``.
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
FIELD-SYMBOLS <val> TYPE any.
UNASSIGN <val>.
@ -500,11 +419,9 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
IF <val> IS INITIAL.
cl_abap_unit_assert=>fail( msg = 'id - initial value is initial' quit = 5 ).
ENDIF.
ENDMETHOD.
METHOD test_bind_one_way.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) )
" t_param = VALUE #( ( name = 'app' value = 'LTCL_UNIT_02_APP_START' ) )
@ -514,11 +431,8 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
FIELD-SYMBOLS <val> TYPE any.
UNASSIGN <val>.
@ -527,24 +441,18 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
IF <val> <> `500`.
cl_abap_unit_assert=>fail( msg = 'data binding - initial set oUpdate wrong' quit = 5 ).
ENDIF.
ENDMETHOD.
METHOD test_bind_two_way.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) )
).
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) ) ).
sv_state = ``.
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
FIELD-SYMBOLS <val> TYPE any.
UNASSIGN <val>.
@ -553,24 +461,18 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
IF <val> <> `500`.
cl_abap_unit_assert=>fail( msg = 'data binding - initial set oUpdate wrong' quit = 5 ).
ENDIF.
ENDMETHOD.
METHOD test_message_box.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) )
).
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) ) ).
sv_state = `TEST_MESSAGE_BOX`.
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
FIELD-SYMBOLS <val> TYPE any.
@ -594,24 +496,18 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
IF <val> <> `information`.
cl_abap_unit_assert=>fail( msg = 'message box - type wrong' quit = 5 ).
ENDIF.
ENDMETHOD.
METHOD test_message_toast.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) )
).
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) ) ).
sv_state = `TEST_MESSAGE_TOAST`.
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
FIELD-SYMBOLS <val> TYPE any.
@ -635,24 +531,18 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
IF <val> <> `show`.
cl_abap_unit_assert=>fail( msg = 'message toast - type wrong' quit = 5 ).
ENDIF.
ENDMETHOD.
METHOD test_timer.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) )
).
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) ) ).
sv_state = `TEST_TIMER`.
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
FIELD-SYMBOLS <val> TYPE any.
@ -669,24 +559,18 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
IF <val> <> `500`.
cl_abap_unit_assert=>fail( msg = 'timer - ms wrong' quit = 5 ).
ENDIF.
ENDMETHOD.
METHOD test_xml_popup.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) )
).
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) ) ).
sv_state = `TEST_POPUP`.
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
FIELD-SYMBOLS <val> TYPE any.
UNASSIGN <val>.
@ -696,23 +580,16 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
IF <val>(9) <> `<mvc:View`.
cl_abap_unit_assert=>fail( msg = 'xml popup - intital popup wrong' quit = 5 ).
ENDIF.
ENDMETHOD.
METHOD test_landing_page.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = 'referer' value = 'dummy' ) )
).
z2ui5_cl_http_handler=>client = VALUE #( t_header = VALUE #( ( name = 'referer' value = 'dummy' ) ) ).
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
FIELD-SYMBOLS <val> TYPE any.
UNASSIGN <val>.
@ -722,24 +599,18 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
IF <val> NS `Step 4`.
cl_abap_unit_assert=>fail( msg = 'landing page - not started when no app' quit = 5 ).
ENDIF.
ENDMETHOD.
METHOD test_scroll_cursor.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) )
).
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) ) ).
sv_state = `TEST_SCROLL_CURSOR`.
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
" FIELD-SYMBOLS <val> TYPE any.
@ -763,63 +634,51 @@ CLASS ltcl_unit_02_app_start IMPLEMENTATION.
* IF <val> <> `information`.
* cl_abap_unit_assert=>fail( msg = 'message box - type wrong' quit = 5 ).
* ENDIF.
ENDMETHOD.
METHOD test_startup_path.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) )
).
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) ) ).
sv_state = `TEST_NAVIGATE`.
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
" FIELD-SYMBOLS <val> TYPE any.
ENDMETHOD.
METHOD test_navigate.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) )
).
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) ) ).
sv_state = `TEST_NAVIGATE`.
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
" FIELD-SYMBOLS <val> TYPE any.
ENDMETHOD.
ENDCLASS.
CLASS ltcl_unit_03_app_ajax DEFINITION FINAL FOR TESTING
DURATION SHORT
RISK LEVEL HARMLESS.
PUBLIC SECTION.
INTERFACES z2ui5_if_app.
DATA product TYPE string.
DATA quantity TYPE string.
DATA check_initialized TYPE abap_bool.
CLASS-DATA sv_state TYPE string.
PRIVATE SECTION.
METHODS test_app_change_value FOR TESTING RAISING cx_static_check.
METHODS test_app_event FOR TESTING RAISING cx_static_check.
@ -827,10 +686,9 @@ CLASS ltcl_unit_03_app_ajax DEFINITION FINAL FOR TESTING
ENDCLASS.
CLASS ltcl_unit_03_app_ajax IMPLEMENTATION.
METHOD z2ui5_if_app~main.
IF check_initialized = abap_false.
check_initialized = abap_true.
product = 'tomato'.
@ -850,8 +708,7 @@ CLASS ltcl_unit_03_app_ajax IMPLEMENTATION.
ENDIF.
client->set_next( VALUE #( xml_main = z2ui5_cl_xml_view=>factory( )->shell(
)->page(
title = 'abap2UI5 - First Example'
)->page( title = 'abap2UI5 - First Example'
navbuttonpress = client->_event( 'BACK' )
shownavbutton = abap_true
)->simple_form( title = 'Form Title' editable = abap_true
@ -860,30 +717,22 @@ CLASS ltcl_unit_03_app_ajax IMPLEMENTATION.
)->label( 'quantity'
)->input( client->_bind( quantity )
)->label( 'product'
)->input(
value = product
)->input( value = product
enabled = abap_false
)->button(
text = 'post'
)->button( text = 'post'
press = client->_event( 'BUTTON_POST' )
)->get_root( )->xml_get( ) ) ).
ENDMETHOD.
METHOD test_app_change_value.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) )
).
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) ) ).
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
FIELD-SYMBOLS <val> TYPE any.
@ -900,11 +749,8 @@ CLASS ltcl_unit_03_app_ajax IMPLEMENTATION.
lv_response = z2ui5_cl_http_handler=>http_post( ).
CLEAR lo_data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
UNASSIGN <val>.
lv_assign = `OVIEWMODEL->OUPDATE->QUANTITY->*`.
@ -912,23 +758,17 @@ CLASS ltcl_unit_03_app_ajax IMPLEMENTATION.
IF <val> <> `600`.
cl_abap_unit_assert=>fail( msg = 'data binding - frontend updated value wrong after roundtrip' quit = 5 ).
ENDIF.
ENDMETHOD.
METHOD test_app_event.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) )
).
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_02_APP_START' ) ) ).
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
FIELD-SYMBOLS <val> TYPE any.
@ -945,11 +785,8 @@ CLASS ltcl_unit_03_app_ajax IMPLEMENTATION.
lv_response = z2ui5_cl_http_handler=>http_post( ).
CLEAR lo_data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
UNASSIGN <val>.
lv_assign = `S_MSG->TEXT->*`.
@ -957,24 +794,18 @@ CLASS ltcl_unit_03_app_ajax IMPLEMENTATION.
IF <val> <> `tomato 700 - send to the server`.
cl_abap_unit_assert=>fail( msg = 'message toast - text wrong' quit = 5 ).
ENDIF.
ENDMETHOD.
METHOD test_app_dump.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_03_APP_AJAX' ) )
).
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_03_APP_AJAX' ) ) ).
sv_state = `ERROR`.
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
FIELD-SYMBOLS <val> TYPE any.
UNASSIGN <val>.
@ -984,23 +815,20 @@ CLASS ltcl_unit_03_app_ajax IMPLEMENTATION.
IF <val> NS `MessagePage`.
cl_abap_unit_assert=>fail( msg = 'system app error - not shown by exception' quit = 5 ).
ENDIF.
ENDMETHOD.
ENDCLASS.
CLASS ltcl_unit_04_deep_data IMPLEMENTATION.
METHOD z2ui5_if_app~main.
IF check_initialized = abap_false.
check_initialized = abap_true.
t_tab = VALUE #(
( title = 'Peter' info = 'completed' descr = 'this is a description' icon = 'sap-icon://account' )
( title = 'Peter' info = 'incompleted' descr = 'this is a description' icon = 'sap-icon://account' )
).
t_tab = VALUE #( title = 'Peter'
descr = 'this is a description'
icon = 'sap-icon://account'
( info = 'completed' )
( info = 'incompleted' ) ).
ENDIF.
@ -1008,17 +836,16 @@ CLASS ltcl_unit_04_deep_data IMPLEMENTATION.
WHEN `CHANGE`.
client->set_next( VALUE #( xml_main = z2ui5_cl_xml_view=>factory( )->shell(
)->page(
title = 'abap2UI5 - First Example'
)->page( title = 'abap2UI5 - First Example'
navbuttonpress = client->_event( 'BACK' )
shownavbutton = abap_true
)->list(
" TODO: check spelling: Ouput (typo) -> Output (ABAP cleaner)
headertext = 'List Ouput'
items = client->_bind( t_tab )
mode = `SingleSelectMaster`
selectionchange = client->_event( 'SELCHANGE' )
)->standard_list_item(
title = '{TITLE}'
)->standard_list_item( title = '{TITLE}'
description = '{DESCR}'
icon = '{ICON}'
info = '{INFO}'
@ -1029,17 +856,16 @@ CLASS ltcl_unit_04_deep_data IMPLEMENTATION.
WHEN OTHERS.
client->set_next( VALUE #( xml_main = z2ui5_cl_xml_view=>factory( )->shell(
)->page(
title = 'abap2UI5 - First Example'
)->page( title = 'abap2UI5 - First Example'
navbuttonpress = client->_event( 'BACK' )
shownavbutton = abap_true
)->list(
" TODO: check spelling: Ouput (typo) -> Output (ABAP cleaner)
headertext = 'List Ouput'
items = client->_bind_one( t_tab )
mode = `SingleSelectMaster`
selectionchange = client->_event( 'SELCHANGE' )
)->standard_list_item(
title = '{TITLE}'
)->standard_list_item( title = '{TITLE}'
description = '{DESCR}'
icon = '{ICON}'
info = '{INFO}'
@ -1052,19 +878,14 @@ CLASS ltcl_unit_04_deep_data IMPLEMENTATION.
ENDMETHOD.
METHOD test_app_deep_data.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_04_DEEP_DATA' ) )
).
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_04_DEEP_DATA' ) ) ).
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
FIELD-SYMBOLS <val> TYPE any.
@ -1095,24 +916,18 @@ CLASS ltcl_unit_04_deep_data IMPLEMENTATION.
IF <val> <> ls_tab_test-descr.
cl_abap_unit_assert=>fail( msg = 'data binding - initial tab data wrong' quit = 5 ).
ENDIF.
ENDMETHOD.
METHOD test_app_deep_data_change.
z2ui5_cl_http_handler=>client = VALUE #(
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_04_DEEP_DATA' ) )
).
t_header = VALUE #( ( name = '~path_info' value = 'LTCL_UNIT_04_DEEP_DATA' ) ) ).
sv_status = 'CHANGE'.
DATA(lv_response) = z2ui5_cl_http_handler=>http_post( ).
DATA lo_data TYPE REF TO data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
FIELD-SYMBOLS <val> TYPE any.
@ -1159,12 +974,7 @@ CLASS ltcl_unit_04_deep_data IMPLEMENTATION.
lv_response = z2ui5_cl_http_handler=>http_post( ).
CLEAR lo_data.
/ui2/cl_json=>deserialize(
EXPORTING
json = lv_response
CHANGING
data = lo_data ).
/ui2/cl_json=>deserialize( EXPORTING json = lv_response
CHANGING data = lo_data ).
ENDMETHOD.
ENDCLASS.