Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/system/test/system.c

    rf35749e ra72f3b8  
    11/*
    2  * Copyright (c) 2025 Jiri Svoboda
     2 * Copyright (c) 2024 Jiri Svoboda
    33 * All rights reserved.
    44 *
     
    4646void test_system_conn(ipc_call_t *, void *);
    4747
    48 static errno_t test_poweroff(void *);
    49 static errno_t test_restart(void *);
     48static errno_t test_shutdown(void *);
    5049
    5150static void test_sys_shutdown_complete(void *);
     
    5352
    5453static system_ops_t test_system_srv_ops = {
    55         .poweroff = test_poweroff,
    56         .restart = test_restart
     54        .shutdown = test_shutdown
    5755};
    5856
     
    6866        errno_t rc;
    6967
    70         bool poweroff_called;
    71         bool restart_called;
     68        bool shutdown_called;
    7269        bool shutdown_complete_called;
    7370        bool shutdown_failed_called;
     
    106103}
    107104
    108 /** system_poweroff() with server returning error response works */
    109 PCUT_TEST(poweroff_failure)
     105/** system_shutdown() with server returning error response works */
     106PCUT_TEST(shutdown_failure)
    110107{
    111108        errno_t rc;
     
    129126
    130127        resp.rc = ENOMEM;
    131         resp.poweroff_called = false;
    132 
    133         rc = system_poweroff(system);
    134         PCUT_ASSERT_TRUE(resp.poweroff_called);
     128        resp.shutdown_called = false;
     129
     130        rc = system_shutdown(system);
     131        PCUT_ASSERT_TRUE(resp.shutdown_called);
    135132        PCUT_ASSERT_ERRNO_VAL(resp.rc, rc);
    136133
     
    141138}
    142139
    143 /** system_poweroff() with server returning success response works */
    144 PCUT_TEST(poweroff_success)
     140/** system_shutdown() with server returning success response works */
     141PCUT_TEST(shutdown_success)
    145142{
    146143        errno_t rc;
     
    164161
    165162        resp.rc = EOK;
    166         resp.poweroff_called = false;
    167 
    168         rc = system_poweroff(system);
    169         PCUT_ASSERT_TRUE(resp.poweroff_called);
    170         PCUT_ASSERT_ERRNO_VAL(resp.rc, rc);
    171 
    172         system_close(system);
    173         rc = loc_service_unregister(srv, sid);
    174         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    175         loc_server_unregister(srv);
    176 }
    177 
    178 /** system_restart() with server returning error response works */
    179 PCUT_TEST(restart_failure)
    180 {
    181         errno_t rc;
    182         service_id_t sid;
    183         system_t *system = NULL;
    184         test_response_t resp;
    185         loc_srv_t *srv;
    186 
    187         async_set_fallback_port_handler(test_system_conn, &resp);
    188 
    189         // FIXME This causes this test to be non-reentrant!
    190         rc = loc_server_register(test_system_server, &srv);
    191         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    192 
    193         rc = loc_service_register(srv, test_system_svc, &sid);
    194         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    195 
    196         rc = system_open(test_system_svc, NULL, NULL, &system);
    197         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    198         PCUT_ASSERT_NOT_NULL(system);
    199 
    200         resp.rc = ENOMEM;
    201         resp.restart_called = false;
    202 
    203         rc = system_restart(system);
    204         PCUT_ASSERT_TRUE(resp.restart_called);
    205         PCUT_ASSERT_ERRNO_VAL(resp.rc, rc);
    206 
    207         system_close(system);
    208         rc = loc_service_unregister(srv, sid);
    209         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    210         loc_server_unregister(srv);
    211 }
    212 
    213 /** system_restart() with server returning success response works */
    214 PCUT_TEST(restart_success)
    215 {
    216         errno_t rc;
    217         service_id_t sid;
    218         system_t *system = NULL;
    219         test_response_t resp;
    220         loc_srv_t *srv;
    221 
    222         async_set_fallback_port_handler(test_system_conn, &resp);
    223 
    224         // FIXME This causes this test to be non-reentrant!
    225         rc = loc_server_register(test_system_server, &srv);
    226         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    227 
    228         rc = loc_service_register(srv, test_system_svc, &sid);
    229         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    230 
    231         rc = system_open(test_system_svc, NULL, NULL, &system);
    232         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    233         PCUT_ASSERT_NOT_NULL(system);
    234 
    235         resp.rc = EOK;
    236         resp.restart_called = false;
    237 
    238         rc = system_restart(system);
    239         PCUT_ASSERT_TRUE(resp.restart_called);
     163        resp.shutdown_called = false;
     164
     165        rc = system_shutdown(system);
     166        PCUT_ASSERT_TRUE(resp.shutdown_called);
    240167        PCUT_ASSERT_ERRNO_VAL(resp.rc, rc);
    241168
     
    352279}
    353280
    354 /** Test system poweroff.
     281/** Test system shutdown.
    355282 *
    356283 * @param arg Argument (test_response_t *)
    357284 */
    358 static errno_t test_poweroff(void *arg)
     285static errno_t test_shutdown(void *arg)
    359286{
    360287        test_response_t *resp = (test_response_t *)arg;
    361288
    362         resp->poweroff_called = true;
    363         return resp->rc;
    364 }
    365 
    366 /** Test system restart.
    367  *
    368  * @param arg Argument (test_response_t *)
    369  */
    370 static errno_t test_restart(void *arg)
    371 {
    372         test_response_t *resp = (test_response_t *)arg;
    373 
    374         resp->restart_called = true;
     289        resp->shutdown_called = true;
    375290        return resp->rc;
    376291}
Note: See TracChangeset for help on using the changeset viewer.