diff options
author | Artur Signell <artur@vaadin.com> | 2012-08-30 17:24:36 +0300 |
---|---|---|
committer | Artur Signell <artur@vaadin.com> | 2012-08-30 17:24:36 +0300 |
commit | 7b25b3886ea95bc6495506fbe9472e45fcbde684 (patch) | |
tree | 0b93cb65dab437feb46720659a63b8f1ef48f7f4 /uitest/src/com/vaadin/tests/components/TestBase.java | |
parent | 8941056349e302e687e40e94c13709e75f256d73 (diff) | |
download | vaadin-framework-7b25b3886ea95bc6495506fbe9472e45fcbde684.tar.gz vaadin-framework-7b25b3886ea95bc6495506fbe9472e45fcbde684.zip |
Renamed tests -> uitest and tests/testbench -> uitest/src (#9299)
Diffstat (limited to 'uitest/src/com/vaadin/tests/components/TestBase.java')
-rw-r--r-- | uitest/src/com/vaadin/tests/components/TestBase.java | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/uitest/src/com/vaadin/tests/components/TestBase.java b/uitest/src/com/vaadin/tests/components/TestBase.java new file mode 100644 index 0000000000..19c6826977 --- /dev/null +++ b/uitest/src/com/vaadin/tests/components/TestBase.java @@ -0,0 +1,64 @@ +package com.vaadin.tests.components; + +import com.vaadin.shared.ui.label.ContentMode; +import com.vaadin.ui.Component; +import com.vaadin.ui.Label; +import com.vaadin.ui.UI.LegacyWindow; +import com.vaadin.ui.VerticalLayout; + +public abstract class TestBase extends AbstractTestCase { + + @Override + public final void init() { + window = new LegacyWindow(getClass().getName()); + setMainWindow(window); + window.getContent().setSizeFull(); + + Label label = new Label(getDescription(), ContentMode.XHTML); + label.setWidth("100%"); + window.getContent().addComponent(label); + + layout = new VerticalLayout(); + window.getContent().addComponent(layout); + ((VerticalLayout) window.getContent()).setExpandRatio(layout, 1); + + setup(); + } + + private LegacyWindow window; + + @Override + public void setMainWindow(LegacyWindow mainWindow) { + if (mainWindow != window) { + throw new IllegalStateException( + "You should not set your own main window when using TestBase. If you need to use a custom Window as the main window, use AbstractTestCase instead."); + } + super.setMainWindow(mainWindow); + } + + private VerticalLayout layout; + + public TestBase() { + + } + + protected VerticalLayout getLayout() { + return layout; + } + + protected abstract void setup(); + + protected void addComponent(Component c) { + getLayout().addComponent(c); + } + + protected void removeComponent(Component c) { + getLayout().removeComponent(c); + } + + protected void replaceComponent(Component oldComponent, + Component newComponent) { + getLayout().replaceComponent(oldComponent, newComponent); + } + +} |