From 0514066382bac8f2f215c60f2fbde7c03af1f934 Mon Sep 17 00:00:00 2001 From: Ashby Thorpe Date: Sun, 31 Dec 2023 16:11:13 +0000 Subject: [PATCH] Add tests --- R/actions.R | 2 +- tests/testthat/test-actions.R | 9 +++++++++ tests/testthat/test-properties.R | 18 +++++++++++++++++- 3 files changed, 27 insertions(+), 2 deletions(-) diff --git a/R/actions.R b/R/actions.R index 5627b84c..6796db0d 100644 --- a/R/actions.R +++ b/R/actions.R @@ -723,7 +723,7 @@ element_set_value <- function(x, text, session, driver) { } else { x$sendKeysToElement(list(rest)) } - } else if (type == "other-input") { + } else { element_focus(x, session = session, driver = driver) execute_js_fn_on(paste0("function(x) { diff --git a/tests/testthat/test-actions.R b/tests/testthat/test-actions.R index 015dc114..6c81a7fa 100644 --- a/tests/testthat/test-actions.R +++ b/tests/testthat/test-actions.R @@ -154,6 +154,15 @@ test_that("actions work", { elem_select(selection) elem_expect(output, has_text("0")) + + editable <- s("#editable-text") + editable_output <- s("#editable-text-output") + + elem_expect(editable_output, has_exact_text("")) + + elem_set_value(editable, "my text") + + elem_expect(editable_output, has_text("my text")) }) test_that("get_element_for_selection() works", { diff --git a/tests/testthat/test-properties.R b/tests/testthat/test-properties.R index cc5e0e2b..93189138 100644 --- a/tests/testthat/test-properties.R +++ b/tests/testthat/test-properties.R @@ -1,7 +1,7 @@ test_that("selenider_element properties work", { session <- selenider_test_session() - open_url("https://ashbythorpe.github.io/selenider/articles/test-site.html") + open_url("https://ashbythorpe.github.io/selenider/dev/articles/test-site.html") expect_equal(elem_name(s("#toggle_div")), "button") expect_equal(elem_name(s(".actions-form")), "form") @@ -26,4 +26,20 @@ test_that("selenider_element properties work", { # Computed style expect_true(elem_css_property(s("#form-output"), "color") %in% c("rgb(255, 0, 0)", "rgba(255, 0, 0, 1)")) + + elem_select(s("#selection"), 1) + + expect_equal(elem_value(s("#selection")), "1") + + elem_select(s("#multiple-selection"), c(2, 3)) + + expect_equal(elem_value(s("#multiple-selection")), c("2", "3")) + + editable <- s("#editable-text") + + expect_equal(elem_value(editable), "Editable text") + + elem_set_value(editable, "my text") + + expect_equal(elem_value(editable), "my text") })