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;
|
#[plugin] #[no_link] extern crate maud_macros;
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn it_works() {
|
fn literals() {
|
||||||
let s = html!("du\tcks" -23 3.14 '\n' "geese").render();
|
let s = html!("du\tcks" -23 3.14 '\n' "geese").render();
|
||||||
assert_eq!(s, "du\tcks-233.14\ngeese");
|
assert_eq!(s, "du\tcks-233.14\ngeese");
|
||||||
}
|
}
|
||||||
|
@ -16,34 +16,86 @@ fn escaping() {
|
||||||
assert_eq!(s, "<flim&flam>");
|
assert_eq!(s, "<flim&flam>");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn semicolons() {
|
||||||
|
let s = html! {
|
||||||
|
"one";
|
||||||
|
"two";
|
||||||
|
"three";
|
||||||
|
;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
"four";
|
||||||
|
}.render();
|
||||||
|
assert_eq!(s, "onetwothreefour");
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn blocks() {
|
fn blocks() {
|
||||||
let s = html! {
|
let s = html! {
|
||||||
"hello"
|
"hello"
|
||||||
{
|
{
|
||||||
" ducks";
|
" ducks" " geese"
|
||||||
" geese";
|
|
||||||
}
|
}
|
||||||
" swans"
|
" swans"
|
||||||
}.render();
|
}.render();
|
||||||
assert_eq!(s, "hello ducks geese swans");
|
assert_eq!(s, "hello ducks geese swans");
|
||||||
}
|
}
|
||||||
|
|
||||||
mod splice {
|
mod elements {
|
||||||
#[test]
|
#[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();
|
let s = html! { $"<pinkie>" }.render();
|
||||||
assert_eq!(s, "<pinkie>");
|
assert_eq!(s, "<pinkie>");
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn raw_literal() {
|
fn raw_literals() {
|
||||||
let s = html! { $$"<pinkie>" }.render();
|
let s = html! { $$"<pinkie>" }.render();
|
||||||
assert_eq!(s, "<pinkie>");
|
assert_eq!(s, "<pinkie>");
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn block() {
|
fn blocks() {
|
||||||
let s = html! {
|
let s = html! {
|
||||||
${
|
${
|
||||||
let mut result = 1i32;
|
let mut result = 1i32;
|
||||||
|
@ -68,7 +120,7 @@ mod splice {
|
||||||
// for why this is commented out
|
// for why this is commented out
|
||||||
/*
|
/*
|
||||||
#[test]
|
#[test]
|
||||||
fn closure() {
|
fn closures() {
|
||||||
let best_pony = "Pinkie Pie";
|
let best_pony = "Pinkie Pie";
|
||||||
let s = html! { $best_pony }.render();
|
let s = html! { $best_pony }.render();
|
||||||
assert_eq!(s, "Pinkie Pie");
|
assert_eq!(s, "Pinkie Pie");
|
||||||
|
|
Loading…
Add table
Reference in a new issue