diff options
Diffstat (limited to 'vendor/displaydoc/tests/happy.rs')
-rw-r--r-- | vendor/displaydoc/tests/happy.rs | 304 |
1 files changed, 152 insertions, 152 deletions
diff --git a/vendor/displaydoc/tests/happy.rs b/vendor/displaydoc/tests/happy.rs index 85aa78f13..f8fde9c61 100644 --- a/vendor/displaydoc/tests/happy.rs +++ b/vendor/displaydoc/tests/happy.rs @@ -1,152 +1,152 @@ -use displaydoc::Display; - -#[cfg(feature = "std")] -use std::path::PathBuf; - -#[derive(Display)] -/// Just a basic struct {thing} -struct HappyStruct { - thing: &'static str, -} - -#[derive(Display)] -#[ignore_extra_doc_attributes] -/// Just a basic struct {thing} -/// and this line should get ignored -struct HappyStruct2 { - thing: &'static str, -} - -#[derive(Display)] -enum Happy { - /// I really like Variant1 - Variant1, - /// Variant2 is pretty swell 2 - Variant2, - /// Variant3 is okay {sometimes} - Variant3 { sometimes: &'static str }, - /** - * Variant4 wants to have a lot of lines - * - * Lets see how this works out for it - */ - Variant4, - /// Variant5 has a parameter {0} and some regular comments - // A regular comment that won't get picked - Variant5(u32), - - /// The path {0} - #[cfg(feature = "std")] - Variant6(PathBuf), - - /// These docs are ignored - #[displaydoc("Variant7 has a parameter {0} and uses #[displaydoc]")] - /// These docs are also ignored - Variant7(u32), -} - -// Used for testing indented doc comments -mod inner_mod { - use super::Display; - - #[derive(Display)] - pub enum InnerHappy { - /// I really like Variant1 - Variant1, - /// Variant2 is pretty swell 2 - Variant2, - /// Variant3 is okay {sometimes} - Variant3 { sometimes: &'static str }, - /** - * Variant4 wants to have a lot of lines - * - * Lets see how this works out for it - */ - Variant4, - /// Variant5 has a parameter {0} and some regular comments - // A regular comment that won't get picked - Variant5(u32), - - /** what happens if we - * put text on the first line? - */ - Variant6, - - /** - what happens if we don't use *? - */ - Variant7, - - /** - * - * what about extra new lines? - */ - Variant8, - } -} - -fn assert_display<T: std::fmt::Display>(input: T, expected: &'static str) { - let out = format!("{}", input); - assert_eq!(expected, out); -} - -#[test] -fn does_it_print() { - assert_display(Happy::Variant1, "I really like Variant1"); - assert_display(Happy::Variant2, "Variant2 is pretty swell 2"); - assert_display(Happy::Variant3 { sometimes: "hi" }, "Variant3 is okay hi"); - assert_display( - Happy::Variant4, - "Variant4 wants to have a lot of lines\n\nLets see how this works out for it", - ); - assert_display( - Happy::Variant5(2), - "Variant5 has a parameter 2 and some regular comments", - ); - assert_display( - Happy::Variant7(2), - "Variant7 has a parameter 2 and uses #[displaydoc]", - ); - assert_display(HappyStruct { thing: "hi" }, "Just a basic struct hi"); - - assert_display(HappyStruct2 { thing: "hi2" }, "Just a basic struct hi2"); - - assert_display(inner_mod::InnerHappy::Variant1, "I really like Variant1"); - assert_display( - inner_mod::InnerHappy::Variant2, - "Variant2 is pretty swell 2", - ); - assert_display( - inner_mod::InnerHappy::Variant3 { sometimes: "hi" }, - "Variant3 is okay hi", - ); - assert_display( - inner_mod::InnerHappy::Variant4, - "Variant4 wants to have a lot of lines\n\nLets see how this works out for it", - ); - assert_display( - inner_mod::InnerHappy::Variant5(2), - "Variant5 has a parameter 2 and some regular comments", - ); - assert_display( - inner_mod::InnerHappy::Variant6, - "what happens if we\nput text on the first line?", - ); - assert_display( - inner_mod::InnerHappy::Variant7, - "what happens if we don\'t use *?", - ); - assert_display( - inner_mod::InnerHappy::Variant8, - "what about extra new lines?", - ); -} - -#[test] -#[cfg(feature = "std")] -fn does_it_print_path() { - assert_display( - Happy::Variant6(PathBuf::from("/var/log/happy")), - "The path /var/log/happy", - ); -} +use displaydoc::Display;
+
+#[cfg(feature = "std")]
+use std::path::PathBuf;
+
+#[derive(Display)]
+/// Just a basic struct {thing}
+struct HappyStruct {
+ thing: &'static str,
+}
+
+#[derive(Display)]
+#[ignore_extra_doc_attributes]
+/// Just a basic struct {thing}
+/// and this line should get ignored
+struct HappyStruct2 {
+ thing: &'static str,
+}
+
+#[derive(Display)]
+enum Happy {
+ /// I really like Variant1
+ Variant1,
+ /// Variant2 is pretty swell 2
+ Variant2,
+ /// Variant3 is okay {sometimes}
+ Variant3 { sometimes: &'static str },
+ /**
+ * Variant4 wants to have a lot of lines
+ *
+ * Lets see how this works out for it
+ */
+ Variant4,
+ /// Variant5 has a parameter {0} and some regular comments
+ // A regular comment that won't get picked
+ Variant5(u32),
+
+ /// The path {0}
+ #[cfg(feature = "std")]
+ Variant6(PathBuf),
+
+ /// These docs are ignored
+ #[displaydoc("Variant7 has a parameter {0} and uses #[displaydoc]")]
+ /// These docs are also ignored
+ Variant7(u32),
+}
+
+// Used for testing indented doc comments
+mod inner_mod {
+ use super::Display;
+
+ #[derive(Display)]
+ pub enum InnerHappy {
+ /// I really like Variant1
+ Variant1,
+ /// Variant2 is pretty swell 2
+ Variant2,
+ /// Variant3 is okay {sometimes}
+ Variant3 { sometimes: &'static str },
+ /**
+ * Variant4 wants to have a lot of lines
+ *
+ * Lets see how this works out for it
+ */
+ Variant4,
+ /// Variant5 has a parameter {0} and some regular comments
+ // A regular comment that won't get picked
+ Variant5(u32),
+
+ /** what happens if we
+ * put text on the first line?
+ */
+ Variant6,
+
+ /**
+ what happens if we don't use *?
+ */
+ Variant7,
+
+ /**
+ *
+ * what about extra new lines?
+ */
+ Variant8,
+ }
+}
+
+fn assert_display<T: std::fmt::Display>(input: T, expected: &'static str) {
+ let out = format!("{}", input);
+ assert_eq!(expected, out);
+}
+
+#[test]
+fn does_it_print() {
+ assert_display(Happy::Variant1, "I really like Variant1");
+ assert_display(Happy::Variant2, "Variant2 is pretty swell 2");
+ assert_display(Happy::Variant3 { sometimes: "hi" }, "Variant3 is okay hi");
+ assert_display(
+ Happy::Variant4,
+ "Variant4 wants to have a lot of lines\n\nLets see how this works out for it",
+ );
+ assert_display(
+ Happy::Variant5(2),
+ "Variant5 has a parameter 2 and some regular comments",
+ );
+ assert_display(
+ Happy::Variant7(2),
+ "Variant7 has a parameter 2 and uses #[displaydoc]",
+ );
+ assert_display(HappyStruct { thing: "hi" }, "Just a basic struct hi");
+
+ assert_display(HappyStruct2 { thing: "hi2" }, "Just a basic struct hi2");
+
+ assert_display(inner_mod::InnerHappy::Variant1, "I really like Variant1");
+ assert_display(
+ inner_mod::InnerHappy::Variant2,
+ "Variant2 is pretty swell 2",
+ );
+ assert_display(
+ inner_mod::InnerHappy::Variant3 { sometimes: "hi" },
+ "Variant3 is okay hi",
+ );
+ assert_display(
+ inner_mod::InnerHappy::Variant4,
+ "Variant4 wants to have a lot of lines\n\nLets see how this works out for it",
+ );
+ assert_display(
+ inner_mod::InnerHappy::Variant5(2),
+ "Variant5 has a parameter 2 and some regular comments",
+ );
+ assert_display(
+ inner_mod::InnerHappy::Variant6,
+ "what happens if we\nput text on the first line?",
+ );
+ assert_display(
+ inner_mod::InnerHappy::Variant7,
+ "what happens if we don\'t use *?",
+ );
+ assert_display(
+ inner_mod::InnerHappy::Variant8,
+ "what about extra new lines?",
+ );
+}
+
+#[test]
+#[cfg(feature = "std")]
+fn does_it_print_path() {
+ assert_display(
+ Happy::Variant6(PathBuf::from("/var/log/happy")),
+ "The path /var/log/happy",
+ );
+}
|