@@ -42,6 +42,8 @@ void test_api_setup(void *data)
4242 int ret ;
4343 enum pm_device_state state ;
4444
45+ test_driver_pm_retval (test_dev , 0 );
46+
4547 /* check API always returns 0 when runtime PM is disabled */
4648 ret = pm_device_runtime_get (test_dev );
4749 zassert_equal (ret , 0 );
@@ -107,6 +109,12 @@ ZTEST(device_runtime_api, test_api)
107109
108110 /*** get + put ***/
109111
112+ /* usage: 0, 0, resume: no */
113+ test_driver_pm_retval (test_dev , - EIO );
114+ ret = pm_device_runtime_get (test_dev );
115+ zassert_equal (ret , - EIO );
116+ test_driver_pm_retval (test_dev , 0 );
117+
110118 /* usage: 0, +1, resume: yes */
111119 ret = pm_device_runtime_get (test_dev );
112120 zassert_equal (ret , 0 );
@@ -126,6 +134,12 @@ ZTEST(device_runtime_api, test_api)
126134 (void )pm_device_state_get (test_dev , & state );
127135 zassert_equal (state , PM_DEVICE_STATE_ACTIVE );
128136
137+ /* usage: 1, 0, suspend: no */
138+ test_driver_pm_retval (test_dev , - EIO );
139+ ret = pm_device_runtime_put (test_dev );
140+ zassert_equal (ret , - EIO );
141+ test_driver_pm_retval (test_dev , 0 );
142+
129143 /* usage: 1, -1, suspend: yes */
130144 ret = pm_device_runtime_put (test_dev );
131145 zassert_equal (ret , 0 );
0 commit comments