Move various ui const tests to library
Move: - `src\test\ui\consts\const-nonzero.rs` to `library\core` - `src\test\ui\consts\ascii.rs` to `library\core` - `src\test\ui\consts\cow-is-borrowed` to `library\alloc` Part of #76268
This commit is contained in:
parent
0d0f6b1130
commit
538e198193
@ -45,3 +45,16 @@ fn test_from_cow_path() {
|
|||||||
let path = Path::new("hello");
|
let path = Path::new("hello");
|
||||||
test_from_cow!(path: &Path);
|
test_from_cow!(path: &Path);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn cow_const() {
|
||||||
|
// test that the methods of `Cow` are usable in a const context
|
||||||
|
|
||||||
|
const COW: Cow<'_, str> = Cow::Borrowed("moo");
|
||||||
|
|
||||||
|
const IS_BORROWED: bool = COW.is_borrowed();
|
||||||
|
assert!(IS_BORROWED);
|
||||||
|
|
||||||
|
const IS_OWNED: bool = COW.is_owned();
|
||||||
|
assert!(!IS_OWNED);
|
||||||
|
}
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
#![feature(allocator_api)]
|
#![feature(allocator_api)]
|
||||||
#![feature(box_syntax)]
|
#![feature(box_syntax)]
|
||||||
|
#![feature(cow_is_borrowed)]
|
||||||
#![feature(drain_filter)]
|
#![feature(drain_filter)]
|
||||||
#![feature(exact_size_is_empty)]
|
#![feature(exact_size_is_empty)]
|
||||||
#![feature(new_uninit)]
|
#![feature(new_uninit)]
|
||||||
|
@ -397,3 +397,14 @@ fn test_is_ascii_align_size_thoroughly() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn ascii_const() {
|
||||||
|
// test that the `is_ascii` methods of `char` and `u8` are usable in a const context
|
||||||
|
|
||||||
|
const CHAR_IS_ASCII: bool = 'a'.is_ascii();
|
||||||
|
assert!(CHAR_IS_ASCII);
|
||||||
|
|
||||||
|
const BYTE_IS_ASCII: bool = 97u8.is_ascii();
|
||||||
|
assert!(BYTE_IS_ASCII);
|
||||||
|
}
|
||||||
|
@ -195,3 +195,20 @@ fn test_nonzero_from_int_on_err() {
|
|||||||
assert!(NonZeroI8::try_from(0).is_err());
|
assert!(NonZeroI8::try_from(0).is_err());
|
||||||
assert!(NonZeroI32::try_from(0).is_err());
|
assert!(NonZeroI32::try_from(0).is_err());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn nonzero_const() {
|
||||||
|
// test that the methods of `NonZeroX>` are usable in a const context
|
||||||
|
// Note: only tests NonZero8
|
||||||
|
|
||||||
|
const NONZERO: NonZeroU8 = unsafe { NonZeroU8::new_unchecked(5) };
|
||||||
|
|
||||||
|
const GET: u8 = NONZERO.get();
|
||||||
|
assert_eq!(GET, 5);
|
||||||
|
|
||||||
|
const ZERO: Option<NonZeroU8> = NonZeroU8::new(0);
|
||||||
|
assert!(ZERO.is_none());
|
||||||
|
|
||||||
|
const ONE: Option<NonZeroU8> = NonZeroU8::new(1);
|
||||||
|
assert!(ONE.is_some());
|
||||||
|
}
|
||||||
|
@ -1,16 +0,0 @@
|
|||||||
// run-pass
|
|
||||||
|
|
||||||
use std::num::NonZeroU8;
|
|
||||||
|
|
||||||
const X: NonZeroU8 = unsafe { NonZeroU8::new_unchecked(5) };
|
|
||||||
const Y: u8 = X.get();
|
|
||||||
|
|
||||||
const ZERO: Option<NonZeroU8> = NonZeroU8::new(0);
|
|
||||||
const ONE: Option<NonZeroU8> = NonZeroU8::new(1);
|
|
||||||
|
|
||||||
fn main() {
|
|
||||||
assert_eq!(Y, 5);
|
|
||||||
|
|
||||||
assert!(ZERO.is_none());
|
|
||||||
assert_eq!(ONE.unwrap().get(), 1);
|
|
||||||
}
|
|
@ -1,15 +0,0 @@
|
|||||||
// run-pass
|
|
||||||
|
|
||||||
#![feature(cow_is_borrowed)]
|
|
||||||
|
|
||||||
use std::borrow::Cow;
|
|
||||||
|
|
||||||
fn main() {
|
|
||||||
const COW: Cow<str> = Cow::Borrowed("moo");
|
|
||||||
|
|
||||||
const IS_BORROWED: bool = COW.is_borrowed();
|
|
||||||
assert!(IS_BORROWED);
|
|
||||||
|
|
||||||
const IS_OWNED: bool = COW.is_owned();
|
|
||||||
assert!(!IS_OWNED);
|
|
||||||
}
|
|
@ -1,15 +0,0 @@
|
|||||||
// run-pass
|
|
||||||
|
|
||||||
static X: bool = 'a'.is_ascii();
|
|
||||||
static Y: bool = 'ä'.is_ascii();
|
|
||||||
|
|
||||||
static BX: bool = b'a'.is_ascii();
|
|
||||||
static BY: bool = 192u8.is_ascii();
|
|
||||||
|
|
||||||
fn main() {
|
|
||||||
assert!(X);
|
|
||||||
assert!(!Y);
|
|
||||||
|
|
||||||
assert!(BX);
|
|
||||||
assert!(!BY);
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user