mirror of
https://github.com/github/codeql.git
synced 2025-12-16 16:53:25 +01:00
Rust: Add tests for Enum
This commit is contained in:
7
rust/ql/test/library-tests/elements/enum/Cargo.lock
generated
Normal file
7
rust/ql/test/library-tests/elements/enum/Cargo.lock
generated
Normal file
@@ -0,0 +1,7 @@
|
||||
# This file is automatically @generated by Cargo.
|
||||
# It is not intended for manual editing.
|
||||
version = 4
|
||||
|
||||
[[package]]
|
||||
name = "test"
|
||||
version = "0.0.1"
|
||||
7
rust/ql/test/library-tests/elements/enum/Enum.expected
Normal file
7
rust/ql/test/library-tests/elements/enum/Enum.expected
Normal file
@@ -0,0 +1,7 @@
|
||||
fieldless
|
||||
| enums.rs:1:1:5:1 | enum Foo |
|
||||
| enums.rs:7:1:11:1 | enum Fieldless |
|
||||
| enums.rs:13:1:18:1 | enum Direction |
|
||||
unitOnly
|
||||
| enums.rs:1:1:5:1 | enum Foo |
|
||||
| enums.rs:13:1:18:1 | enum Direction |
|
||||
6
rust/ql/test/library-tests/elements/enum/Enum.ql
Normal file
6
rust/ql/test/library-tests/elements/enum/Enum.ql
Normal file
@@ -0,0 +1,6 @@
|
||||
import rust
|
||||
import TestUtils
|
||||
|
||||
query predicate fieldless(Enum e) { toBeTested(e) and e.isFieldless() }
|
||||
|
||||
query predicate unitOnly(Enum e) { toBeTested(e) and e.isUnitOnly() }
|
||||
24
rust/ql/test/library-tests/elements/enum/enums.rs
Normal file
24
rust/ql/test/library-tests/elements/enum/enums.rs
Normal file
@@ -0,0 +1,24 @@
|
||||
enum Foo {
|
||||
Bar,
|
||||
Baz,
|
||||
Qux,
|
||||
}
|
||||
|
||||
enum Fieldless {
|
||||
Tuple(),
|
||||
Struct{},
|
||||
Unit,
|
||||
}
|
||||
|
||||
enum Direction {
|
||||
North = 0,
|
||||
East = 90,
|
||||
South = 180,
|
||||
West = 270,
|
||||
}
|
||||
|
||||
enum Color {
|
||||
Red(u8),
|
||||
Green(u8),
|
||||
Blue(u8),
|
||||
}
|
||||
Reference in New Issue
Block a user