@@ -0,0 +1,2267 @@
+package org.musetest.selenium.steps;%0A%0Aimport org.musetest.core.*;%0Aimport org.musetest.core.context.*;%0Aimport org.musetest.core.resource.*;%0Aimport org.musetest.core.step.*;%0Aimport org.musetest.core.step.descriptor.*;%0Aimport org.musetest.core.steptest.*;%0Aimport org.openqa.selenium.*;%0Aimport org.openqa.selenium.support.ui.*;%0A%0A/**%0A * @author Christopher L Merrill (see LICENSE.txt for license details)%0A */%0A@MuseTypeId(%22select-text%22)%0A@MuseStepName(%22Select by visible text%22)%0A@MuseInlineEditString(%22select choice %7Btext%7D in %7Belement%7D%22)%0A@MuseStepIcon(%22glyph:FontAwesome:HAND_ALT_UP%22)%0A@MuseStepTypeGroup(%22Selenium%22)%0A@MuseStepShortDescription(%22Select an option by visible text%22)%0A@MuseStepLongDescription(%22Resolves the 'element' source to a Select WebElement and then selects the option with visible text = 'text'.%22)%0Apublic class SelectOptionByText extends BrowserStep%0A    %7B%0A    @SuppressWarnings(%22unused%22) // called via reflection%0A    public SelectOptionByText(StepConfiguration config, MuseProject project) throws RequiredParameterMissingError, MuseInstantiationException%0A        %7B%0A        super(config);%0A        _element_source = getValueSource(config, ELEMENT_PARAM, true, project);%0A        _index_source = getValueSource(config, TEXT_PARAM, true, project);%0A        %7D%0A%0A    @Override%0A    public StepExecutionResult executeImplementation(StepExecutionContext context) throws StepExecutionError%0A        %7B%0A        String text = getValue(_index_source, context, false, String.class);%0A        WebElement element = getElement(_element_source, context);%0A        try%0A            %7B%0A            Select select = new Select(element);%0A            select.selectByVisibleText(text);%0A            return new BasicStepExecutionResult(StepExecutionStatus.COMPLETE);%0A            %7D%0A        catch (UnexpectedTagNameException e)%0A            %7B%0A            return new BasicStepExecutionResult(StepExecutionStatus.ERROR, %22The element is not a %3Cselect%3E tag.%22);%0A            %7D%0A        %7D%0A%0A    private MuseValueSource _element_source;%0A    private MuseValueSource _index_source;%0A%0A    public final static String ELEMENT_PARAM = %22element%22;%0A    public final static String TEXT_PARAM = %22text%22;%0A%0A    public final static String TYPE_ID = SelectOptionByText.class.getAnnotation(MuseTypeId.class).value();%0A    %7D%0A%0A%0A

Add SelectOptionByText step