2018-08-03 02:40:32 +03:00
|
|
|
use wasm_bindgen_test::*;
|
|
|
|
use web_sys::HtmlOptionElement;
|
|
|
|
|
|
|
|
#[wasm_bindgen_test]
|
|
|
|
fn test_option_element() {
|
2018-08-09 22:13:50 +03:00
|
|
|
let option = HtmlOptionElement::new_using_text_and_value_and_default_selected_and_selected(
|
2018-08-03 02:40:32 +03:00
|
|
|
"option_text",
|
|
|
|
"option_value",
|
|
|
|
false,
|
|
|
|
true
|
|
|
|
).unwrap();
|
|
|
|
|
|
|
|
option.set_disabled(true);
|
|
|
|
assert_eq!(option.disabled(), true, "Option should be disabled after we set it to be disabled.");
|
|
|
|
|
|
|
|
option.set_disabled(false);
|
|
|
|
assert_eq!(option.disabled(), false, "Option should not be disabled after we set it to be not-disabled.");
|
|
|
|
|
|
|
|
assert!(option.form().is_none(), "Our option should not be associated with a form.");
|
|
|
|
|
|
|
|
option.set_label("Well this truly is a neat option");
|
|
|
|
assert_eq!(option.label(), "Well this truly is a neat option", "Option should have the label we gave it.");
|
|
|
|
|
|
|
|
option.set_default_selected(true);
|
|
|
|
assert_eq!(option.default_selected(), true, "Option should be default_selected after we set it to be default_selected.");
|
|
|
|
|
|
|
|
option.set_default_selected(false);
|
|
|
|
assert_eq!(option.default_selected(), false, "Option should not be default_selected after we set it to be not default_selected.");
|
|
|
|
|
|
|
|
option.set_selected(true);
|
|
|
|
assert_eq!(option.selected(), true, "Option should be selected after we set it to be selected.");
|
|
|
|
|
|
|
|
option.set_selected(false);
|
|
|
|
assert_eq!(option.selected(), false, "Option should not be selected after we set it to be not selected.");
|
|
|
|
|
|
|
|
option.set_value("tomato");
|
|
|
|
assert_eq!(option.value(), "tomato", "Option should have the value we gave it.");
|
|
|
|
|
|
|
|
option.set_text("potato");
|
|
|
|
assert_eq!(option.text(), "potato", "Option should have the text we gave it.");
|
|
|
|
|
|
|
|
assert_eq!(option.index(), 0, "This should be the first option, since there are no other known options.");
|
2018-08-05 01:05:31 +03:00
|
|
|
}
|