aboutsummaryrefslogtreecommitdiffstats
path: root/tests/misc_dangerous_protocol.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/misc_dangerous_protocol.rs')
-rw-r--r--tests/misc_dangerous_protocol.rs324
1 files changed, 161 insertions, 163 deletions
diff --git a/tests/misc_dangerous_protocol.rs b/tests/misc_dangerous_protocol.rs
index 6f759e3..3aa042a 100644
--- a/tests/misc_dangerous_protocol.rs
+++ b/tests/misc_dangerous_protocol.rs
@@ -34,166 +34,164 @@ fn dangerous_protocol_autolink() {
);
}
-// To do: image.
-// #[test]
-// fn dangerous_protocol_image() {
-// assert_eq!(
-// micromark("![](javascript:alert(1))"),
-// "<p><img src=\"\" alt=\"\" /></p>",
-// "should be safe by default"
-// );
-
-// assert_eq!(
-// micromark("![](http://a)"),
-// "<p><img src=\"http://a\" alt=\"\" /></p>",
-// "should allow `http:`"
-// );
-
-// assert_eq!(
-// micromark("![](https://a)"),
-// "<p><img src=\"https://a\" alt=\"\" /></p>",
-// "should allow `https:`"
-// );
-
-// assert_eq!(
-// micromark("![](irc:///help)"),
-// "<p><img src=\"\" alt=\"\" /></p>",
-// "should not allow `irc:`"
-// );
-
-// assert_eq!(
-// micromark("![](mailto:a)"),
-// "<p><img src=\"\" alt=\"\" /></p>",
-// "should not allow `mailto:`"
-// );
-
-// assert_eq!(
-// micromark("![](#a)"),
-// "<p><img src=\"#a\" alt=\"\" /></p>",
-// "should allow a hash"
-// );
-
-// assert_eq!(
-// micromark("![](?a)"),
-// "<p><img src=\"?a\" alt=\"\" /></p>",
-// "should allow a search"
-// );
-
-// assert_eq!(
-// micromark("![](/a)"),
-// "<p><img src=\"/a\" alt=\"\" /></p>",
-// "should allow an absolute"
-// );
-
-// assert_eq!(
-// micromark("![](./a)"),
-// "<p><img src=\"./a\" alt=\"\" /></p>",
-// "should allow an relative"
-// );
-
-// assert_eq!(
-// micromark("![](../a)"),
-// "<p><img src=\"../a\" alt=\"\" /></p>",
-// "should allow an upwards relative"
-// );
-
-// assert_eq!(
-// micromark("![](a#b:c)"),
-// "<p><img src=\"a#b:c\" alt=\"\" /></p>",
-// "should allow a colon in a hash"
-// );
-
-// assert_eq!(
-// micromark("![](a?b:c)"),
-// "<p><img src=\"a?b:c\" alt=\"\" /></p>",
-// "should allow a colon in a search"
-// );
-
-// assert_eq!(
-// micromark("![](a/b:c)"),
-// "<p><img src=\"a/b:c\" alt=\"\" /></p>",
-// "should allow a colon in a path"
-// );
-// }
-
-// To do: link.
-// #[test]
-// fn dangerous_protocol_link() {
-// assert_eq!(
-// micromark("[](javascript:alert(1))"),
-// "<p><a href=\"\"></a></p>",
-// "should be safe by default"
-// );
-
-// assert_eq!(
-// micromark("[](http://a)"),
-// "<p><a href=\"http://a\"></a></p>",
-// "should allow `http:`"
-// );
-
-// assert_eq!(
-// micromark("[](https://a)"),
-// "<p><a href=\"https://a\"></a></p>",
-// "should allow `https:`"
-// );
-
-// assert_eq!(
-// micromark("[](irc:///help)"),
-// "<p><a href=\"irc:///help\"></a></p>",
-// "should allow `irc:`"
-// );
-
-// assert_eq!(
-// micromark("[](mailto:a)"),
-// "<p><a href=\"mailto:a\"></a></p>",
-// "should allow `mailto:`"
-// );
-
-// assert_eq!(
-// micromark("[](#a)"),
-// "<p><a href=\"#a\"></a></p>",
-// "should allow a hash"
-// );
-
-// assert_eq!(
-// micromark("[](?a)"),
-// "<p><a href=\"?a\"></a></p>",
-// "should allow a search"
-// );
-
-// assert_eq!(
-// micromark("[](/a)"),
-// "<p><a href=\"/a\"></a></p>",
-// "should allow an absolute"
-// );
-
-// assert_eq!(
-// micromark("[](./a)"),
-// "<p><a href=\"./a\"></a></p>",
-// "should allow an relative"
-// );
-
-// assert_eq!(
-// micromark("[](../a)"),
-// "<p><a href=\"../a\"></a></p>",
-// "should allow an upwards relative"
-// );
-
-// assert_eq!(
-// micromark("[](a#b:c)"),
-// "<p><a href=\"a#b:c\"></a></p>",
-// "should allow a colon in a hash"
-// );
-
-// assert_eq!(
-// micromark("[](a?b:c)"),
-// "<p><a href=\"a?b:c\"></a></p>",
-// "should allow a colon in a search"
-// );
-
-// assert_eq!(
-// micromark("[](a/b:c)"),
-// "<p><a href=\"a/b:c\"></a></p>",
-// "should allow a colon in a path"
-// );
-// }
+#[test]
+fn dangerous_protocol_image() {
+ assert_eq!(
+ micromark("![](javascript:alert(1))"),
+ "<p><img src=\"\" alt=\"\" /></p>",
+ "should be safe by default"
+ );
+
+ assert_eq!(
+ micromark("![](http://a)"),
+ "<p><img src=\"http://a\" alt=\"\" /></p>",
+ "should allow `http:`"
+ );
+
+ assert_eq!(
+ micromark("![](https://a)"),
+ "<p><img src=\"https://a\" alt=\"\" /></p>",
+ "should allow `https:`"
+ );
+
+ assert_eq!(
+ micromark("![](irc:///help)"),
+ "<p><img src=\"\" alt=\"\" /></p>",
+ "should not allow `irc:`"
+ );
+
+ assert_eq!(
+ micromark("![](mailto:a)"),
+ "<p><img src=\"\" alt=\"\" /></p>",
+ "should not allow `mailto:`"
+ );
+
+ assert_eq!(
+ micromark("![](#a)"),
+ "<p><img src=\"#a\" alt=\"\" /></p>",
+ "should allow a hash"
+ );
+
+ assert_eq!(
+ micromark("![](?a)"),
+ "<p><img src=\"?a\" alt=\"\" /></p>",
+ "should allow a search"
+ );
+
+ assert_eq!(
+ micromark("![](/a)"),
+ "<p><img src=\"/a\" alt=\"\" /></p>",
+ "should allow an absolute"
+ );
+
+ assert_eq!(
+ micromark("![](./a)"),
+ "<p><img src=\"./a\" alt=\"\" /></p>",
+ "should allow an relative"
+ );
+
+ assert_eq!(
+ micromark("![](../a)"),
+ "<p><img src=\"../a\" alt=\"\" /></p>",
+ "should allow an upwards relative"
+ );
+
+ assert_eq!(
+ micromark("![](a#b:c)"),
+ "<p><img src=\"a#b:c\" alt=\"\" /></p>",
+ "should allow a colon in a hash"
+ );
+
+ assert_eq!(
+ micromark("![](a?b:c)"),
+ "<p><img src=\"a?b:c\" alt=\"\" /></p>",
+ "should allow a colon in a search"
+ );
+
+ assert_eq!(
+ micromark("![](a/b:c)"),
+ "<p><img src=\"a/b:c\" alt=\"\" /></p>",
+ "should allow a colon in a path"
+ );
+}
+
+#[test]
+fn dangerous_protocol_link() {
+ assert_eq!(
+ micromark("[](javascript:alert(1))"),
+ "<p><a href=\"\"></a></p>",
+ "should be safe by default"
+ );
+
+ assert_eq!(
+ micromark("[](http://a)"),
+ "<p><a href=\"http://a\"></a></p>",
+ "should allow `http:`"
+ );
+
+ assert_eq!(
+ micromark("[](https://a)"),
+ "<p><a href=\"https://a\"></a></p>",
+ "should allow `https:`"
+ );
+
+ assert_eq!(
+ micromark("[](irc:///help)"),
+ "<p><a href=\"irc:///help\"></a></p>",
+ "should allow `irc:`"
+ );
+
+ assert_eq!(
+ micromark("[](mailto:a)"),
+ "<p><a href=\"mailto:a\"></a></p>",
+ "should allow `mailto:`"
+ );
+
+ assert_eq!(
+ micromark("[](#a)"),
+ "<p><a href=\"#a\"></a></p>",
+ "should allow a hash"
+ );
+
+ assert_eq!(
+ micromark("[](?a)"),
+ "<p><a href=\"?a\"></a></p>",
+ "should allow a search"
+ );
+
+ assert_eq!(
+ micromark("[](/a)"),
+ "<p><a href=\"/a\"></a></p>",
+ "should allow an absolute"
+ );
+
+ assert_eq!(
+ micromark("[](./a)"),
+ "<p><a href=\"./a\"></a></p>",
+ "should allow an relative"
+ );
+
+ assert_eq!(
+ micromark("[](../a)"),
+ "<p><a href=\"../a\"></a></p>",
+ "should allow an upwards relative"
+ );
+
+ assert_eq!(
+ micromark("[](a#b:c)"),
+ "<p><a href=\"a#b:c\"></a></p>",
+ "should allow a colon in a hash"
+ );
+
+ assert_eq!(
+ micromark("[](a?b:c)"),
+ "<p><a href=\"a?b:c\"></a></p>",
+ "should allow a colon in a search"
+ );
+
+ assert_eq!(
+ micromark("[](a/b:c)"),
+ "<p><a href=\"a/b:c\"></a></p>",
+ "should allow a colon in a path"
+ );
+}