MCPcopy Create free account
hub / github.com/RT-Thread/rt-thread / test_netdev_status_set

Function test_netdev_status_set

components/net/utest/tc_netdev.c:526–568  ·  view source on GitHub ↗

* @brief Test network device status setting operations * * This function tests: * - Network interface up/down operations * - Link status setting and verification * - Status operation error handling * - Status restoration * * @note Carefully avoids disrupting network connectivity during testing */

Source from the content-addressed store, hash-verified

524 * @note Carefully avoids disrupting network connectivity during testing
525 */
526static void test_netdev_status_set(void)
527{
528 rt_err_t res;
529 rt_bool_t original_link_up;
530
531 /* Test set_up and set_down - be careful not to disrupt network */
532 rt_bool_t was_up = netdev_is_up(netdev_default);
533
534 if (!was_up)
535 {
536 res = netdev_set_up(netdev_default);
537 uassert_true(res == RT_EOK);
538 uassert_true(netdev_is_up(netdev_default));
539 }
540
541 uassert_true(netdev_is_up(netdev_default));
542 uassert_true(netdev_default->ops->set_up != RT_NULL);
543 uassert_true(netdev_default->ops->set_down != RT_NULL);
544
545 /* Test set_down and set_up cycle */
546 res = netdev_set_down(netdev_default);
547 if (res == RT_EOK)
548 {
549 uassert_false(netdev_is_up(netdev_default));
550 res = netdev_set_up(netdev_default);
551 uassert_true(res == RT_EOK);
552 uassert_true(netdev_is_up(netdev_default));
553 }
554 else
555 {
556 uassert_true(netdev_is_up(netdev_default));
557 }
558
559 /* Test link status */
560 original_link_up = netdev_is_link_up(netdev_default);
561 netdev_low_level_set_link_status(netdev_default, RT_FALSE);
562 uassert_false(netdev_is_link_up(netdev_default));
563 netdev_low_level_set_link_status(netdev_default, RT_TRUE);
564 uassert_true(netdev_is_link_up(netdev_default));
565
566 /* Restore original link status */
567 netdev_low_level_set_link_status(netdev_default, original_link_up);
568}
569
570/**
571 * @brief Test network device configuration setting operations

Callers

nothing calls this directly

Calls 3

netdev_set_upFunction · 0.85
netdev_set_downFunction · 0.85

Tested by

no test coverage detected