package experimental; import com.windowtester.runtime.IUIContext; import com.windowtester.runtime.locator.ILocator; import com.windowtester.runtime.swt.UITestCaseSWT; /** * <p> * Copyright (c) 2007, Instantiations, Inc.<br> * All Rights Reserved * * @author Phil Quitslund * */ public class LiterateLocatorSpike extends UITestCaseSWT { public void testWontRun() throws Exception { IUIContext ui = getUI(); ui.click(figure().hasText("Foo").part().hasClass("com.acme.MyEditPart").object().hasProperty("id", 13)); ui.click(figure().object().hasProperty("id", 13).and().hasClass("MyModelClass")); ui.click(figure().part().hasClass("MyEditPart")); ui.click(figure().part().hasClass("MyEditPart").in().editor("Foo.model")); } static interface ILocatorBuilder extends ILocator { } static interface IFigureWithTextLocatorBuilder extends ILocatorBuilder { IObjectLocatorBuilder object(); IPartLocatorBuilder part(); } static interface IFigureLocatorBuilder extends IFigureWithTextLocatorBuilder { IFigureWithTextLocatorBuilder hasText(String textOrPattern); } static interface IPropertyMatcherBuilder extends ILocatorBuilder { IObjectLocatorBuilder and(); } static interface IPropertyMatcherBuilder2 { IPropertyMatcherBuilder hasProperty(String propertyName, Object value); } static interface IObjectLocatorBuilder { IPropertyMatcherBuilder hasProperty(String propertyName, Object value); IPropertyMatcherBuilder hasClass(String className); IPropertyMatcherBuilder hasClass(Class<?> cls); } static interface IScopeLocatorBuilder extends ILocatorBuilder { ILocatorBuilder view(String name); ILocatorBuilder editor(String name); } static interface IPartWithClassLocatorBuilder extends ILocatorBuilder { IObjectLocatorBuilder object(); IScopeLocatorBuilder in(); } static interface IPartLocatorBuilder extends IPartWithClassLocatorBuilder { IPartWithClassLocatorBuilder hasClass(String className); IPartWithClassLocatorBuilder hasClass(Class<?> cls); } static IFigureLocatorBuilder figure() { return null; } }