diff --git a/src/windows.rs b/src/windows.rs index 1bf5029..3a47494 100644 --- a/src/windows.rs +++ b/src/windows.rs @@ -102,10 +102,10 @@ impl std::convert::TryFrom for WinAPIThreadPriority { ThreadPriority::Crossplatform(crate::ThreadPriorityValue(p)) => match p { 0 => WinAPIThreadPriority::Idle, 1..=19 => WinAPIThreadPriority::Lowest, - 21..=39 => WinAPIThreadPriority::BelowNormal, - 41..=59 => WinAPIThreadPriority::Normal, - 61..=79 => WinAPIThreadPriority::AboveNormal, - 81..=98 => WinAPIThreadPriority::Highest, + 20..=39 => WinAPIThreadPriority::BelowNormal, + 40..=59 => WinAPIThreadPriority::Normal, + 60..=79 => WinAPIThreadPriority::AboveNormal, + 80..=98 => WinAPIThreadPriority::Highest, 99 => WinAPIThreadPriority::TimeCritical, _ => return Err(Error::Priority("The value is out of range [0; 99].")), }, diff --git a/tests/windows.rs b/tests/windows.rs index 62abb2f..cff6d0d 100644 --- a/tests/windows.rs +++ b/tests/windows.rs @@ -6,6 +6,7 @@ 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::Crossplatform(80u8.try_into().unwrap()), ThreadPriority::Os(WinAPIThreadPriority::Highest.try_into().unwrap()))] #[case(ThreadPriority::Max, ThreadPriority::Os(WinAPIThreadPriority::Highest.try_into().unwrap()))] fn get_and_set_priority_requires_capabilities( #[case] input_priority: ThreadPriority,