public void ShouldNotAllowUserToDeselectByValueWhenSelectDoesNotSupportMultipleSelections()
        {
            IWebElement   element        = driver.FindElement(By.Name("selectomatic"));
            SelectElement elementWrapper = new SelectElement(element);

            Assert.Throws <InvalidOperationException>(() => elementWrapper.DeselectByValue("two"));
        }
        public void ShouldThrowExceptionOnDeselectByReturnedValueIfOptionDoesNotExist()
        {
            IWebElement   element        = driver.FindElement(By.Name("select_empty_multiple"));
            SelectElement elementWrapper = new SelectElement(element);

            Assert.Throws <NoSuchElementException>(() => elementWrapper.DeselectByValue("not there"));
        }
        public void ShouldAllowOptionsToBeDeselectedByReturnedValue()
        {
            IWebElement element = driver.FindElement(By.Name("multi"));
            SelectElement elementWrapper = new SelectElement(element);
            elementWrapper.DeselectByValue("eggs");
            IList<IWebElement> returnedOptions = elementWrapper.AllSelectedOptions;

            Assert.AreEqual(1, returnedOptions.Count);
        }
Exemple #4
0
        public void ShouldAllowOptionsToBeDeselectedByReturnedValue()
        {
            IWebElement   element        = driver.FindElement(By.Name("multi"));
            SelectElement elementWrapper = new SelectElement(element);

            elementWrapper.DeselectByValue("eggs");
            IList <IWebElement> returnedOptions = elementWrapper.AllSelectedOptions;

            Assert.AreEqual(1, returnedOptions.Count);
        }
 public void DeselectByValue(string value)
 {
     SelectElement element = new SelectElement(aWebElement);
     element.DeselectByValue(value);
 }
Exemple #6
0
        public void TestMultipleSelectList()
        {
            //Get the List as a Select using it's name attribute
             		    SelectElement color = new SelectElement(driver.FindElement(By.Name("color")));

             		    //Verify List support multiple selection
            Assert.IsTrue(color.IsMultiple);

            //Verify List has five options for selection
            Assert.AreEqual(5, color.Options.Count);

            //Select multiple options in the list using visible text
            color.SelectByText("Black");
            color.SelectByText("Red");
            color.SelectByText("Silver");

            //Verify there 3 options selected in the list
            Assert.AreEqual(3,color.AllSelectedOptions.Count);

            //We will verify list has multiple options selected as listed in a array
            var exp_sel_options = new ArrayList(new String[]{"Black", "Red", "Silver"});
            var act_sel_options = new ArrayList();

            foreach(IWebElement option in color.AllSelectedOptions)
                act_sel_options.Add(option.Text);

            //Verify expected array for selected options match with actual options selected
            Assert.AreEqual(exp_sel_options.ToArray(), act_sel_options.ToArray());

            //Deselect an option using visible text
            color.DeselectByText("Silver");
            //Verify selected options count
            Assert.AreEqual(2, color.AllSelectedOptions.Count);

            //Deselect an option using value attribute of the option
            color.DeselectByValue("rd");
            //Verify selected options count
            Assert.AreEqual(1, color.AllSelectedOptions.Count);

            //Deselect an option using index of the option
            color.DeselectByIndex(0);
            //Verify selected options count
            Assert.AreEqual(0, color.AllSelectedOptions.Count);
        }
        /// <summary>
        /// select-multipleの選択と解除
        /// </summary>
        /// <param name="driver"></param>
        private static void EditMultiSelectField(IWebDriver driver)
        {
            // <select multiple="multiple">の選択
            var element = driver.FindElement(By.Id("id_selected_multiple"));
            var selectElement = new SelectElement(element);

            // 全部を選択
            selectElement.SelectByValue("1");
            selectElement.SelectByValue("2");
            selectElement.SelectByValue("3");

            // 一部を解除
            // 選択と同様、Index, Value, Textの3種類あり
            selectElement.DeselectByValue("2");

            // もしくは、一括で解除
            selectElement.DeselectAll();

            // 再度選択しておく
            selectElement.SelectByValue("2");
        }
 public void ShouldNotAllowUserToDeselectByValueWhenSelectDoesNotSupportMultipleSelections()
 {
     IWebElement element = driver.FindElement(By.Name("selectomatic"));
     SelectElement elementWrapper = new SelectElement(element);
     Assert.Throws<InvalidOperationException>(() => elementWrapper.DeselectByValue("two"));
 }
 public void ShouldThrowExceptionOnDeselectByReturnedValueIfOptionDoesNotExist()
 {
     IWebElement element = driver.FindElement(By.Name("select_empty_multiple"));
     SelectElement elementWrapper = new SelectElement(element);
     Assert.Throws<NoSuchElementException>(() => elementWrapper.DeselectByValue("not there"));
 }