From bd2e7a495b10fe903d1473ca1c5c6cbff9bf7011 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Johannes=20Dahlstr=C3=B6m?= Date: Mon, 3 Sep 2012 11:45:27 +0300 Subject: [PATCH] Test case for #9452 --- .../PanelConcurrentModificationException.java | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 uitest/src/com/vaadin/tests/components/panel/PanelConcurrentModificationException.java diff --git a/uitest/src/com/vaadin/tests/components/panel/PanelConcurrentModificationException.java b/uitest/src/com/vaadin/tests/components/panel/PanelConcurrentModificationException.java new file mode 100644 index 0000000000..9235eb3cfc --- /dev/null +++ b/uitest/src/com/vaadin/tests/components/panel/PanelConcurrentModificationException.java @@ -0,0 +1,46 @@ +package com.vaadin.tests.components.panel; + +import com.vaadin.tests.components.TestBase; +import com.vaadin.ui.Button; +import com.vaadin.ui.Button.ClickEvent; +import com.vaadin.ui.ComponentContainer; +import com.vaadin.ui.Label; +import com.vaadin.ui.Notification; +import com.vaadin.ui.Panel; + +public class PanelConcurrentModificationException extends TestBase { + + private final ComponentContainer panel = new Panel(); + + @Override + protected void setup() { + addComponent(new Button("Click here for exception", + new Button.ClickListener() { + @Override + public void buttonClick(ClickEvent event) { + panel.addComponent(new Label("Label")); + } + })); + addComponent(new Button("Or click here first", + new Button.ClickListener() { + @Override + public void buttonClick(ClickEvent event) { + Notification + .show("It is now safe to click the other button"); + } + })); + addComponent(panel); + } + + @Override + protected String getDescription() { + return "Modifying Panel content causes Internal Error (ConcurrentModificationException)"; + } + + @Override + protected Integer getTicketNumber() { + // TODO Auto-generated method stub + return null; + } + +} -- 2.39.5