Add unit tests for various 'web-sys' HTML element bindings

That list includes:
 * HtmlOptionsCollection
 * HtmlOutputElement
 * HtmlParagraphElement
 * HtmlParamElement
 * HtmlPreElement
 * HtmlProgressElement
 * HtmlQuoteElement
 * HtmlSlotElement
This commit is contained in:
Tyler Wilcock
2018-08-01 18:11:29 -05:00
parent c4dcaee1b9
commit e3546863bb
11 changed files with 230 additions and 20 deletions

View File

@ -0,0 +1,21 @@
use wasm_bindgen_test::*;
use wasm_bindgen::prelude::*;
use web_sys::HtmlProgressElement;
#[wasm_bindgen(module = "./tests/wasm/element.js")]
extern {
fn new_progress() -> HtmlProgressElement;
}
#[wasm_bindgen_test]
fn test_progress_element() {
let progress = new_progress();
progress.set_max(150.5);
assert_eq!(progress.max(), 150.5, "Maximum progress value should be 150.5.");
progress.set_value(22.);
assert_eq!(progress.value(), 22., "Progress value should be 22 units.");
assert_eq!(progress.position(), (22. / 150.5), "Progress position should be 22 divided by the max possible value.");
assert!(progress.labels().length() == 0, "Our simple progress bar shouldn't be associated with any labels.");
}