summaryrefslogtreecommitdiffstats
path: root/rust/vendor/num_enum/tests/default.rs
diff options
context:
space:
mode:
Diffstat (limited to 'rust/vendor/num_enum/tests/default.rs')
-rw-r--r--rust/vendor/num_enum/tests/default.rs33
1 files changed, 33 insertions, 0 deletions
diff --git a/rust/vendor/num_enum/tests/default.rs b/rust/vendor/num_enum/tests/default.rs
new file mode 100644
index 0000000..80e2d89
--- /dev/null
+++ b/rust/vendor/num_enum/tests/default.rs
@@ -0,0 +1,33 @@
+// Guard against https://github.com/illicitonion/num_enum/issues/27
+mod alloc {}
+mod core {}
+mod num_enum {}
+mod std {}
+
+#[test]
+fn default() {
+ #[derive(Debug, Eq, PartialEq, ::num_enum::Default)]
+ #[repr(u8)]
+ enum Enum {
+ #[allow(unused)]
+ Zero = 0,
+ #[num_enum(default)]
+ NonZero = 1,
+ }
+
+ assert_eq!(Enum::NonZero, <Enum as ::core::default::Default>::default());
+}
+
+#[test]
+fn default_standard_default_attribute() {
+ #[derive(Debug, Eq, PartialEq, ::num_enum::Default)]
+ #[repr(u8)]
+ enum Enum {
+ #[allow(unused)]
+ Zero = 0,
+ #[default]
+ NonZero = 1,
+ }
+
+ assert_eq!(Enum::NonZero, <Enum as ::core::default::Default>::default());
+}