def select(value)
      assert_exists

      selected = nil
      @object.getOptions.select do |option|
        next unless matches_option?(option, value)

        selected ||= option.asText
        option.click unless option.isSelected
      end

      unless selected
        raise NoValueFoundException, "unknown option with value #{value.inspect} for select_list #{@conditions.inspect}"
      end

      selected
    end
def select(value)
      assert_exists

      selected = nil
      @object.getOptions.select do |option|
        next unless matches_option?(option, value)

        selected ||= option.asText
        option.click unless option.isSelected
      end

      unless selected
        raise NoValueFoundException, "unknown option with value #{value.inspect} for select_list #{@conditions.inspect}"
      end

      selected
    end
Select the option(s) whose text or label matches the given string.
 If several options match the value given, all will be selected.

 @param [String, Regexp] value A value.
 @raise [Celerity::Exception::NoValueFoundException] if the value does not exist.
 @return [String] The option selected. If multiple options match, returns the first match