wasm-bindgen/crates/web-sys/tests/all/anchor_element.rs
Jonathan Kingston 67b43ee389 Adding in initial support for all HTML*Element interfaces. (#568)
* Adding in initial support for all HTML*Element interfaces.

* Fix camelcasing of short HTML interface names

* Disabling span test as breaks on taskcluster
2018-07-27 09:57:24 -07:00

84 lines
3.6 KiB
Rust

use super::websys_project;
#[test]
fn anchor_element() {
websys_project()
.file(
"src/lib.rs",
r#"
#![feature(use_extern_macros, wasm_custom_section)]
extern crate wasm_bindgen;
use wasm_bindgen::prelude::*;
extern crate web_sys;
#[wasm_bindgen]
pub fn test_anchor_element(element: &web_sys::HtmlAnchorElement) {
assert_eq!(element.target(), "", "Shouldn't have a target");
element.set_target("_blank");
assert_eq!(element.target(), "_blank", "Should have a target");
assert_eq!(element.download(), "", "Shouldn't have a download");
element.set_download("boop.png");
assert_eq!(element.download(), "boop.png", "Should have a download");
assert_eq!(element.ping(), "", "Shouldn't have a ping");
element.set_ping("boop");
assert_eq!(element.ping(), "boop", "Should have a ping");
assert_eq!(element.rel(), "", "Shouldn't have a rel");
element.set_rel("boop");
assert_eq!(element.rel(), "boop", "Should have a rel");
assert_eq!(element.referrer_policy(), "", "Shouldn't have a referrer_policy");
element.set_referrer_policy("origin");
assert_eq!(element.referrer_policy(), "origin", "Should have a referrer_policy");
assert_eq!(element.hreflang(), "", "Shouldn't have a hreflang");
element.set_hreflang("en-us");
assert_eq!(element.hreflang(), "en-us", "Should have a hreflang");
assert_eq!(element.type_(), "", "Shouldn't have a type");
element.set_type("text/plain");
assert_eq!(element.type_(), "text/plain", "Should have a type");
assert_eq!(element.text().unwrap(), "", "Shouldn't have a text");
element.set_text("Click me!").unwrap();
assert_eq!(element.text().unwrap(), "Click me!", "Should have a text");
assert_eq!(element.coords(), "", "Shouldn't have a coords");
element.set_coords("1,2,3");
assert_eq!(element.coords(), "1,2,3", "Should have a coords");
assert_eq!(element.charset(), "", "Shouldn't have a charset");
element.set_charset("thing");
assert_eq!(element.charset(), "thing", "Should have a charset");
assert_eq!(element.name(), "", "Shouldn't have a name");
element.set_name("thing");
assert_eq!(element.name(), "thing", "Should have a name");
assert_eq!(element.rev(), "", "Shouldn't have a rev");
element.set_rev("thing");
assert_eq!(element.rev(), "thing", "Should have a rev");
assert_eq!(element.shape(), "", "Shouldn't have a shape");
element.set_shape("thing");
assert_eq!(element.shape(), "thing", "Should have a shape");
}
"#,
)
.file(
"test.js",
r#"
import * as assert from "assert";
import * as wasm from "./out";
export function test() {
let anchor = document.createElement("a");
wasm.test_anchor_element(anchor);
}
"#,
)
.test();
}