Make tests significantly more sexy
This commit is contained in:
parent
e3752b72e6
commit
4bd68641e1
1 changed files with 60 additions and 8 deletions
|
@ -5,7 +5,7 @@ extern crate maud;
|
|||
#[plugin] #[no_link] extern crate maud_macros;
|
||||
|
||||
#[test]
|
||||
fn it_works() {
|
||||
fn literals() {
|
||||
let s = html!("du\tcks" -23 3.14 '\n' "geese").render();
|
||||
assert_eq!(s, "du\tcks-233.14\ngeese");
|
||||
}
|
||||
|
@ -16,34 +16,86 @@ fn escaping() {
|
|||
assert_eq!(s, "<flim&flam>");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn semicolons() {
|
||||
let s = html! {
|
||||
"one";
|
||||
"two";
|
||||
"three";
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
"four";
|
||||
}.render();
|
||||
assert_eq!(s, "onetwothreefour");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn blocks() {
|
||||
let s = html! {
|
||||
"hello"
|
||||
{
|
||||
" ducks";
|
||||
" geese";
|
||||
" ducks" " geese"
|
||||
}
|
||||
" swans"
|
||||
}.render();
|
||||
assert_eq!(s, "hello ducks geese swans");
|
||||
}
|
||||
|
||||
mod splice {
|
||||
mod elements {
|
||||
#[test]
|
||||
fn literal() {
|
||||
fn simple() {
|
||||
let s = html! {
|
||||
p { b { "pickle" } "barrel" i { "kumquat" } }
|
||||
}.render();
|
||||
assert_eq!(s, "<p><b>pickle</b>barrel<i>kumquat</i></p>");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn nesting() {
|
||||
let s = html!(html body div p sup "butts").render();
|
||||
assert_eq!(s, "<html><body><div><p><sup>butts</sup></p></div></body></html>");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn empty() {
|
||||
let s = html!("pinkie" br/ "pie").render();
|
||||
assert_eq!(s, "pinkie<br>pie");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn attributes() {
|
||||
let s = html! {
|
||||
link rel="stylesheet" href="styles.css"/
|
||||
section id="midriff" {
|
||||
p class="hotpink" "Hello!"
|
||||
}
|
||||
}.render();
|
||||
assert_eq!(s, concat!(
|
||||
r#"<link rel="stylesheet" href="styles.css">"#,
|
||||
r#"<section id="midriff"><p class="hotpink">Hello!</p></section>"#));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn empty_attributes() {
|
||||
let s = html! { div readonly=! input type="checkbox" checked=! / }.render();
|
||||
assert_eq!(s, r#"<div readonly><input type="checkbox" checked></div>"#);
|
||||
}
|
||||
}
|
||||
|
||||
mod splices {
|
||||
#[test]
|
||||
fn literals() {
|
||||
let s = html! { $"<pinkie>" }.render();
|
||||
assert_eq!(s, "<pinkie>");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn raw_literal() {
|
||||
fn raw_literals() {
|
||||
let s = html! { $$"<pinkie>" }.render();
|
||||
assert_eq!(s, "<pinkie>");
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn block() {
|
||||
fn blocks() {
|
||||
let s = html! {
|
||||
${
|
||||
let mut result = 1i32;
|
||||
|
@ -68,7 +120,7 @@ mod splice {
|
|||
// for why this is commented out
|
||||
/*
|
||||
#[test]
|
||||
fn closure() {
|
||||
fn closures() {
|
||||
let best_pony = "Pinkie Pie";
|
||||
let s = html! { $best_pony }.render();
|
||||
assert_eq!(s, "Pinkie Pie");
|
||||
|
|
Loading…
Add table
Reference in a new issue