def test_release_pid(self, lib): "Tests release_pid() method." def pqos_alloc_release_pid_m(pid_array, pid_array_len): "Mock pqos_alloc_release_pid()." self.assertEqual(pid_array_len, 4) self.assertEqual(pid_array[0], 1234) self.assertEqual(pid_array[1], 5432) self.assertEqual(pid_array[2], 7568) self.assertEqual(pid_array[3], 4545) return 0 func_mock = MagicMock(side_effect=pqos_alloc_release_pid_m) lib.pqos_alloc_release_pid = func_mock alloc = PqosAlloc() alloc.release_pid([1234, 5432, 7568, 4545]) lib.pqos_alloc_release_pid.assert_called_once()
# Initialize PQoS library pqos = Pqos() pqos.init("OS") alloc = PqosAlloc() # Get PID of the current process pid = os.getpid() # Associate process with COS 1 print('Associating process %d with COS 1...' % pid) alloc.assoc_set_pid(pid, 1) # Get all processes associated with COS 1 print('Processes associated with COS 1:') print(alloc.get_pids(1)) # Release association print('Releasing association for process %d...' % pid) alloc.release_pid([pid]) # Current process should not be associated with COS 1 print('Processes associated with COS 1:') print(alloc.get_pids(1)) print('Is PID %d associated with COS 1?' % pid) print('Yes' if pid in alloc.get_pids(1) else 'No') # Finalize PQoS library pqos.fini()