mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-23 15:23:46 +00:00
Split and expand nonstandard-style lints unicode unit test.
This commit is contained in:
parent
25687caa2e
commit
e8f5785bfc
50
src/test/ui/lint/lint-nonstandard-style-unicode-1.rs
Normal file
50
src/test/ui/lint/lint-nonstandard-style-unicode-1.rs
Normal file
@ -0,0 +1,50 @@
|
||||
#![allow(dead_code)]
|
||||
|
||||
#![forbid(non_camel_case_types)]
|
||||
#![feature(non_ascii_idents)]
|
||||
|
||||
// Some scripts (e.g., hiragana) don't have a concept of
|
||||
// upper/lowercase
|
||||
|
||||
// 1. non_camel_case_types
|
||||
|
||||
// Can start with non-lowercase letter
|
||||
struct Θχ;
|
||||
struct ヒa;
|
||||
|
||||
struct χa;
|
||||
//~^ ERROR type `χa` should have an upper camel case name
|
||||
|
||||
// If there's already leading or trailing underscores, they get trimmed before checking.
|
||||
// This is fine:
|
||||
struct _ヒb;
|
||||
|
||||
// This is not:
|
||||
struct __χa;
|
||||
//~^ ERROR type `__χa` should have an upper camel case name
|
||||
|
||||
// Besides this, we cannot have two continous underscores in the middle.
|
||||
|
||||
struct 对__否;
|
||||
//~^ ERROR type `对__否` should have an upper camel case name
|
||||
|
||||
struct ヒ__χ;
|
||||
//~^ ERROR type `ヒ__χ` should have an upper camel case name
|
||||
|
||||
// also cannot have lowercase letter next to a underscore.
|
||||
// so this triggers the lint:
|
||||
|
||||
struct Hello_你好;
|
||||
//~^ ERROR type `Hello_你好` should have an upper camel case name
|
||||
|
||||
struct Hello_World;
|
||||
//~^ ERROR type `Hello_World` should have an upper camel case name
|
||||
|
||||
struct 你_ӟ;
|
||||
//~^ ERROR type `你_ӟ` should have an upper camel case name
|
||||
|
||||
// and this is ok:
|
||||
|
||||
struct 你_好;
|
||||
|
||||
fn main() {}
|
50
src/test/ui/lint/lint-nonstandard-style-unicode-1.stderr
Normal file
50
src/test/ui/lint/lint-nonstandard-style-unicode-1.stderr
Normal file
@ -0,0 +1,50 @@
|
||||
error: type `χa` should have an upper camel case name
|
||||
--> $DIR/lint-nonstandard-style-unicode-1.rs:15:8
|
||||
|
|
||||
LL | struct χa;
|
||||
| ^^ help: convert the identifier to upper camel case: `Χa`
|
||||
|
|
||||
note: the lint level is defined here
|
||||
--> $DIR/lint-nonstandard-style-unicode-1.rs:3:11
|
||||
|
|
||||
LL | #![forbid(non_camel_case_types)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: type `__χa` should have an upper camel case name
|
||||
--> $DIR/lint-nonstandard-style-unicode-1.rs:23:8
|
||||
|
|
||||
LL | struct __χa;
|
||||
| ^^^^ help: convert the identifier to upper camel case: `Χa`
|
||||
|
||||
error: type `对__否` should have an upper camel case name
|
||||
--> $DIR/lint-nonstandard-style-unicode-1.rs:28:8
|
||||
|
|
||||
LL | struct 对__否;
|
||||
| ^^^^^^ help: convert the identifier to upper camel case: `对_否`
|
||||
|
||||
error: type `ヒ__χ` should have an upper camel case name
|
||||
--> $DIR/lint-nonstandard-style-unicode-1.rs:31:8
|
||||
|
|
||||
LL | struct ヒ__χ;
|
||||
| ^^^^^ help: convert the identifier to upper camel case: `ヒΧ`
|
||||
|
||||
error: type `Hello_你好` should have an upper camel case name
|
||||
--> $DIR/lint-nonstandard-style-unicode-1.rs:37:8
|
||||
|
|
||||
LL | struct Hello_你好;
|
||||
| ^^^^^^^^^^ help: convert the identifier to upper camel case: `Hello你好`
|
||||
|
||||
error: type `Hello_World` should have an upper camel case name
|
||||
--> $DIR/lint-nonstandard-style-unicode-1.rs:40:8
|
||||
|
|
||||
LL | struct Hello_World;
|
||||
| ^^^^^^^^^^^ help: convert the identifier to upper camel case: `HelloWorld`
|
||||
|
||||
error: type `你_ӟ` should have an upper camel case name
|
||||
--> $DIR/lint-nonstandard-style-unicode-1.rs:43:8
|
||||
|
|
||||
LL | struct 你_ӟ;
|
||||
| ^^^^ help: convert the identifier to upper camel case: `你Ӟ`
|
||||
|
||||
error: aborting due to 7 previous errors
|
||||
|
30
src/test/ui/lint/lint-nonstandard-style-unicode-2.rs
Normal file
30
src/test/ui/lint/lint-nonstandard-style-unicode-2.rs
Normal file
@ -0,0 +1,30 @@
|
||||
#![allow(dead_code)]
|
||||
|
||||
#![forbid(non_snake_case)]
|
||||
#![feature(non_ascii_idents)]
|
||||
|
||||
// Some scripts (e.g., hiragana) don't have a concept of
|
||||
// upper/lowercase
|
||||
|
||||
// 2. non_snake_case
|
||||
|
||||
// Can only use non-uppercase letters.
|
||||
// So this works:
|
||||
|
||||
fn 编程() {}
|
||||
|
||||
// but this doesn't:
|
||||
|
||||
fn Ц() {}
|
||||
//~^ ERROR function `Ц` should have a snake case name
|
||||
|
||||
// besides this, you cannot use continous underscores in the middle
|
||||
|
||||
fn 分__隔() {}
|
||||
//~^ ERROR function `分__隔` should have a snake case name
|
||||
|
||||
// but you can use them both at the beginning and at the end.
|
||||
|
||||
fn _______不_连_续_的_存_在_______() {}
|
||||
|
||||
fn main() {}
|
20
src/test/ui/lint/lint-nonstandard-style-unicode-2.stderr
Normal file
20
src/test/ui/lint/lint-nonstandard-style-unicode-2.stderr
Normal file
@ -0,0 +1,20 @@
|
||||
error: function `Ц` should have a snake case name
|
||||
--> $DIR/lint-nonstandard-style-unicode-2.rs:18:4
|
||||
|
|
||||
LL | fn Ц() {}
|
||||
| ^ help: convert the identifier to snake case: `ц`
|
||||
|
|
||||
note: the lint level is defined here
|
||||
--> $DIR/lint-nonstandard-style-unicode-2.rs:3:11
|
||||
|
|
||||
LL | #![forbid(non_snake_case)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
||||
error: function `分__隔` should have a snake case name
|
||||
--> $DIR/lint-nonstandard-style-unicode-2.rs:23:4
|
||||
|
|
||||
LL | fn 分__隔() {}
|
||||
| ^^^^^^ help: convert the identifier to snake case: `分_隔`
|
||||
|
||||
error: aborting due to 2 previous errors
|
||||
|
25
src/test/ui/lint/lint-nonstandard-style-unicode-3.rs
Normal file
25
src/test/ui/lint/lint-nonstandard-style-unicode-3.rs
Normal file
@ -0,0 +1,25 @@
|
||||
#![allow(dead_code)]
|
||||
|
||||
#![forbid(non_upper_case_globals)]
|
||||
#![feature(non_ascii_idents)]
|
||||
|
||||
// Some scripts (e.g., hiragana) don't have a concept of
|
||||
// upper/lowercase
|
||||
|
||||
// 3. non_upper_case_globals
|
||||
|
||||
// Can only use non-lowercase letters.
|
||||
// So this works:
|
||||
|
||||
static ラ: usize = 0;
|
||||
|
||||
// but this doesn't:
|
||||
|
||||
static τεχ: f32 = 3.14159265;
|
||||
//~^ ERROR static variable `τεχ` should have an upper case name
|
||||
|
||||
// This has no limit at all on underscore usages.
|
||||
|
||||
static __密__封__线__内__禁__止__答__题__: bool = true;
|
||||
|
||||
fn main() {}
|
14
src/test/ui/lint/lint-nonstandard-style-unicode-3.stderr
Normal file
14
src/test/ui/lint/lint-nonstandard-style-unicode-3.stderr
Normal file
@ -0,0 +1,14 @@
|
||||
error: static variable `τεχ` should have an upper case name
|
||||
--> $DIR/lint-nonstandard-style-unicode-3.rs:18:8
|
||||
|
|
||||
LL | static τεχ: f32 = 3.14159265;
|
||||
| ^^^ help: convert the identifier to upper case: `ΤΕΧ`
|
||||
|
|
||||
note: the lint level is defined here
|
||||
--> $DIR/lint-nonstandard-style-unicode-3.rs:3:11
|
||||
|
|
||||
LL | #![forbid(non_upper_case_globals)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: aborting due to previous error
|
||||
|
@ -1,16 +0,0 @@
|
||||
// check-pass
|
||||
|
||||
#![allow(dead_code)]
|
||||
|
||||
#![forbid(non_camel_case_types)]
|
||||
#![forbid(non_upper_case_globals)]
|
||||
#![feature(non_ascii_idents)]
|
||||
|
||||
// Some scripts (e.g., hiragana) don't have a concept of
|
||||
// upper/lowercase
|
||||
|
||||
struct ヒ;
|
||||
|
||||
static ラ: usize = 0;
|
||||
|
||||
pub fn main() {}
|
Loading…
Reference in New Issue
Block a user