File: windows.rs

package info (click to toggle)
rust-thread-priority 1.1.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 208 kB
  • sloc: makefile: 2
file content (20 lines) | stat: -rw-r--r-- 833 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#![cfg(windows)]
use rstest::rstest;
use std::convert::TryInto;
use thread_priority::*;

#[rstest]
#[case(ThreadPriority::Min, ThreadPriority::Os(WinAPIThreadPriority::Lowest.try_into().unwrap()))]
#[case(ThreadPriority::Crossplatform(23u8.try_into().unwrap()), ThreadPriority::Os(WinAPIThreadPriority::BelowNormal.try_into().unwrap()))]
#[case(ThreadPriority::Max, ThreadPriority::Os(WinAPIThreadPriority::Highest.try_into().unwrap()))]
fn get_and_set_priority_requires_capabilities(
    #[case] input_priority: ThreadPriority,
    #[case] expected_priority: ThreadPriority,
) {
    let thread_id = thread_native_id();

    let set_result = set_thread_priority(thread_id, input_priority);
    let get_result = get_thread_priority(thread_id);
    assert_eq!(set_result, Ok(()));
    assert_eq!(get_result, Ok(expected_priority),);
}