summaryrefslogtreecommitdiffstats
path: root/vendor/web-sys/tests/wasm/output_element.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-18 02:49:50 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-18 02:49:50 +0000
commit9835e2ae736235810b4ea1c162ca5e65c547e770 (patch)
tree3fcebf40ed70e581d776a8a4c65923e8ec20e026 /vendor/web-sys/tests/wasm/output_element.rs
parentReleasing progress-linux version 1.70.0+dfsg2-1~progress7.99u1. (diff)
downloadrustc-9835e2ae736235810b4ea1c162ca5e65c547e770.tar.xz
rustc-9835e2ae736235810b4ea1c162ca5e65c547e770.zip
Merging upstream version 1.71.1+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/web-sys/tests/wasm/output_element.rs')
-rw-r--r--vendor/web-sys/tests/wasm/output_element.rs71
1 files changed, 71 insertions, 0 deletions
diff --git a/vendor/web-sys/tests/wasm/output_element.rs b/vendor/web-sys/tests/wasm/output_element.rs
new file mode 100644
index 000000000..bb25f1824
--- /dev/null
+++ b/vendor/web-sys/tests/wasm/output_element.rs
@@ -0,0 +1,71 @@
+use wasm_bindgen::prelude::*;
+use wasm_bindgen_test::*;
+use web_sys::HtmlOutputElement;
+
+#[wasm_bindgen(module = "/tests/wasm/element.js")]
+extern "C" {
+ fn new_output() -> HtmlOutputElement;
+}
+
+#[wasm_bindgen_test]
+fn test_output_element() {
+ let output = new_output();
+ assert!(
+ output.html_for().length() == 0,
+ "Our basic <output> should have no html associated with it."
+ );
+ assert!(
+ output.form().is_none(),
+ "Our basic <output> should have no form associated with it."
+ );
+
+ output.set_name("Calculation result");
+ assert_eq!(
+ output.name(),
+ "Calculation result",
+ "Output name should be 'Calculation result'."
+ );
+
+ assert_eq!(
+ output.type_(),
+ "output",
+ "Our basic <output> should have an type of 'output'."
+ );
+
+ output.set_default_value("27");
+ assert_eq!(
+ output.default_value(),
+ "27",
+ "Default output value should be '27'."
+ );
+
+ output.set_value("49");
+ assert_eq!(output.value(), "49", "Output value should be '49'.");
+
+ // TODO: Fails in Chrome, but not in Firefox.
+ //assert!(output.will_validate(), "Output should validate by default (maybe browser dependent?)");
+
+ assert!(
+ output.validity().valid(),
+ "Our <output>s validity should be true."
+ );
+
+ assert!(
+ output.validation_message().is_ok(),
+ "We should be able to retrieve some validation message from our <output>."
+ );
+
+ assert!(output.check_validity(), "Our <output> should be valid.");
+
+ assert!(
+ output.report_validity(),
+ "Our <output> should report valid."
+ );
+
+ output.set_custom_validity("Some scary error message.");
+
+ assert!(
+ output.labels().length() == 0,
+ "Our basic <output> shouldn't have any labels associated with it."
+ );
+}