]> git.lizzy.rs Git - rust.git/blobdiff - tests/target/attrib.rs
Tidy up and pass tests
[rust.git] / tests / target / attrib.rs
index 542ed3676f0dddf5c4b130459c58a33484d89582..0a3d2bc0b8106506750bbd42f38b0d30bcb9f052 100644 (file)
@@ -1,6 +1,19 @@
 // rustfmt-wrap_comments: true
 // Test attributes and doc comments are preserved.
 
+//! Doc comment
+
+#![attribute]
+
+//! Crate doc comment
+
+// Comment
+
+// Comment on attribute
+#![the(attribute)]
+
+// Another comment
+
 #[invalid attribute]
 fn foo() {}
 
@@ -33,11 +46,12 @@ pub fn f2(self) {
     fn f3(self) -> Dog {}
 
     /// Blah blah bing.
+
     #[attrib1]
     /// Blah blah bing.
     #[attrib2]
-    // Another comment that needs rewrite because it's
-    // tooooooooooooooooooooooooooooooo loooooooooooong.
+    // Another comment that needs rewrite because it's tooooooooooooooooooooooooooooooo
+    // loooooooooooong.
     /// Blah blah bing.
     fn f4(self) -> Cat {}
 
@@ -48,7 +62,8 @@ fn f5(self) -> Monkey {}
 
 // #984
 struct Foo {
-    #[derive(Clone, PartialEq, Debug, Deserialize, Serialize)] foo: usize,
+    #[derive(Clone, PartialEq, Debug, Deserialize, Serialize)]
+    foo: usize,
 }
 
 // #1668
@@ -110,3 +125,36 @@ fn foo() {}
 mod InnerAttributes {
     #![this_is_an_inner_attribute(foo)]
 }
+
+fn attributes_on_statements() {
+    // Local
+    #[attr(on(local))]
+    let x = 3;
+
+    // Item
+    #[attr(on(item))]
+    use foo;
+
+    // Expr
+    #[attr(on(expr))]
+    {}
+
+    // Semi
+    #[attr(on(semi))]
+    foo();
+
+    // Mac
+    #[attr(on(mac))]
+    foo!();
+}
+
+// Large derive
+#[derive(Add, Sub, Mul, Div, Clone, Copy, Eq, PartialEq, Ord, PartialOrd, Debug, Hash, Serialize,
+         Deserialize)]
+pub struct HP(pub u8);
+
+// Long `#[doc = "..."]`
+struct A {
+    #[doc = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"]
+    b: i32,
+}