From: Johannes Dahlström Date: Fri, 9 Mar 2012 12:43:41 +0000 (+0000) Subject: Test case and TestBench test for #5109 X-Git-Tag: 7.0.0.alpha2~234^2~1 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=574472d49597eb1711c964741a621f0cf88966be;p=vaadin-framework.git Test case and TestBench test for #5109 svn changeset:23211/svn branch:6.8 --- diff --git a/tests/testbench/com/vaadin/tests/application/PaintableIdsShouldBeUnique.html b/tests/testbench/com/vaadin/tests/application/PaintableIdsShouldBeUnique.html new file mode 100644 index 0000000000..64b3197fb8 --- /dev/null +++ b/tests/testbench/com/vaadin/tests/application/PaintableIdsShouldBeUnique.html @@ -0,0 +1,122 @@ + + + + + + +PaintableIdsShouldBeUnique + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PaintableIdsShouldBeUnique
open/run/com.vaadin.tests.application.PaintableIdsShouldBeUnique?restartApplication
mouseClickvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::PID_SMyLabel30,11
assertTextvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::PID_SMyLabelA label with a debug id.
assertTextvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::/VVerticalLayout[0]/ChildComponentContainer[1]/VLabel[0]A label without a debug id.
clickvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::PID_SMyButton/domChild[0]/domChild[0]
clickvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::PID_SMyButton/domChild[0]/domChild[0]
clickvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::PID_SMyButton/domChild[0]/domChild[0]
assertTextvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::PID_SMyLabelButton clicked 3 times.
assertTextvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::/VVerticalLayout[0]/ChildComponentContainer[1]/VLabel[0]Button clicked 3 times.
clickAndWaitvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]
assertTextvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::PID_0SMyLabelA label with a debug id.
assertTextvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::/VVerticalLayout[0]/ChildComponentContainer[1]/VLabel[0]A label without a debug id.
clickvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::PID_0SMyButton/domChild[0]/domChild[0]
assertTextvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::PID_0SMyLabelButton clicked 1 times.
assertTextvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::/VVerticalLayout[0]/ChildComponentContainer[1]/VLabel[0]Button clicked 1 times.
clickAndWaitvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::/VVerticalLayout[0]/ChildComponentContainer[3]/VButton[0]/domChild[0]/domChild[0]
assertTextvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::PID_1SMyLabelA label with a debug id.
assertTextvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::/VVerticalLayout[0]/ChildComponentContainer[1]/VLabel[0]A label without a debug id.
clickvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::PID_1SMyButton/domChild[0]/domChild[0]
assertTextvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::PID_1SMyLabelButton clicked 1 times.
assertTextvaadin=runcomvaadintestsapplicationPaintableIdsShouldBeUnique::/VVerticalLayout[0]/ChildComponentContainer[1]/VLabel[0]Button clicked 1 times.
+ + diff --git a/tests/testbench/com/vaadin/tests/application/PaintableIdsShouldBeUnique.java b/tests/testbench/com/vaadin/tests/application/PaintableIdsShouldBeUnique.java new file mode 100644 index 0000000000..95760c11a8 --- /dev/null +++ b/tests/testbench/com/vaadin/tests/application/PaintableIdsShouldBeUnique.java @@ -0,0 +1,74 @@ +package com.vaadin.tests.application; + +import com.vaadin.terminal.ExternalResource; +import com.vaadin.tests.components.TestBase; +import com.vaadin.ui.Button; +import com.vaadin.ui.Button.ClickEvent; +import com.vaadin.ui.Label; +import com.vaadin.ui.Window; + +public class PaintableIdsShouldBeUnique extends TestBase { + + @Override + protected void setup() { + setMainWindow(new MyWindow()); + } + + @Override + protected String getDescription() { + return "Two Paintables attached to different windows with the same debug id should have unique paintable ids"; + } + + @Override + protected Integer getTicketNumber() { + return 5109; + } + + @Override + public Window getWindow(String name) { + Window win = super.getWindow(name); + if (win == null) { + win = new MyWindow(); + addWindow(win); + win.open(new ExternalResource(win.getURL())); + } + return win; + } + + private class MyWindow extends Window { + int counter = 0; + Label labelWithDebugId = new Label("A label with a debug id."); + Label labelWithoutDebugId = new Label("A label without a debug id."); + Button button = new Button("Click me."); + Button newwin = new Button("New window"); + + MyWindow() { + labelWithDebugId.setDebugId("MyLabel"); + + button.addListener(new Button.ClickListener() { + public void buttonClick(ClickEvent event) { + counter++; + labelWithDebugId.setValue("Button clicked " + counter + + " times."); + labelWithoutDebugId.setValue("Button clicked " + counter + + " times."); + } + }); + button.setDebugId("MyButton"); + + newwin.addListener(new Button.ClickListener() { + public void buttonClick(ClickEvent event) { + Window win = new MyWindow(); + PaintableIdsShouldBeUnique.this.addWindow(win); + open(new ExternalResource(win.getURL())); + } + }); + + addComponent(labelWithDebugId); + addComponent(labelWithoutDebugId); + addComponent(button); + addComponent(newwin); + }; + } + +}