summaryrefslogtreecommitdiffstats
path: root/server/tests
diff options
context:
space:
mode:
authorTeemu Suo-Anttila <teemusa@vaadin.com>2015-04-02 13:49:17 +0300
committerVaadin Code Review <review@vaadin.com>2015-04-08 12:25:46 +0000
commit9f95ac117ac55c54f6a3d69ab3bd9aa3d8f1ef76 (patch)
tree64a8776bac5246fcf50f2c7ae6701364959ee1d2 /server/tests
parent8f6a7b9d36caf30b39d5fe5e2a517f81ab7062d2 (diff)
downloadvaadin-framework-9f95ac117ac55c54f6a3d69ab3bd9aa3d8f1ef76.tar.gz
vaadin-framework-9f95ac117ac55c54f6a3d69ab3bd9aa3d8f1ef76.zip
Fix MenuBar MenuItem caption reading from design (#17361)
Change-Id: I438039ab8ad83bf0b2153939502903571f231bbb
Diffstat (limited to 'server/tests')
-rw-r--r--server/tests/src/com/vaadin/tests/components/menubar/MenuBarDeclarativeTest.java62
1 files changed, 61 insertions, 1 deletions
diff --git a/server/tests/src/com/vaadin/tests/components/menubar/MenuBarDeclarativeTest.java b/server/tests/src/com/vaadin/tests/components/menubar/MenuBarDeclarativeTest.java
index e6dee44812..3bc1ebfbf9 100644
--- a/server/tests/src/com/vaadin/tests/components/menubar/MenuBarDeclarativeTest.java
+++ b/server/tests/src/com/vaadin/tests/components/menubar/MenuBarDeclarativeTest.java
@@ -16,7 +16,9 @@
package com.vaadin.tests.components.menubar;
import java.io.IOException;
+import java.util.List;
+import org.junit.Assert;
import org.junit.Test;
import com.vaadin.server.ExternalResource;
@@ -128,7 +130,7 @@ public class MenuBarDeclarativeTest extends DeclarativeTestBase<MenuBar> {
MenuBar menuBar = new MenuBar();
menuBar.setHtmlContentAllowed(true);
MenuItem fileMenu = menuBar.addItem("<b>File</b>", null);
- fileMenu.addItem("<font style='color: red'>Save</font>", null);
+ fileMenu.addItem("<font style=\"color: red\">Save</font>", null);
fileMenu.addItem("Open", new ThemeResource(
"../runo/icons/16/folder.png"), null);
fileMenu.addSeparator();
@@ -136,4 +138,62 @@ public class MenuBarDeclarativeTest extends DeclarativeTestBase<MenuBar> {
testRead(design, menuBar);
testWrite(design, menuBar);
}
+
+ @Override
+ public MenuBar testRead(String design, MenuBar expected) {
+ MenuBar result = super.testRead(design, expected);
+
+ List<MenuItem> expectedMenuItems = expected.getItems();
+ List<MenuItem> actualMenuItems = result.getItems();
+ Assert.assertEquals("Different amount of menu items",
+ expectedMenuItems.size(), actualMenuItems.size());
+
+ for (int i = 0; i < expectedMenuItems.size(); ++i) {
+ compareMenus(expectedMenuItems.get(i), actualMenuItems.get(i));
+ }
+
+ return result;
+ }
+
+ private void compareMenus(MenuItem expected, MenuItem actual) {
+ String baseError = "Error Comparing MenuItem " + expected.getText()
+ + ": ";
+ Assert.assertEquals(baseError + "Visibile", expected.isVisible(),
+ actual.isVisible());
+ Assert.assertEquals(baseError + "Checkable", expected.isCheckable(),
+ actual.isCheckable());
+ Assert.assertEquals(baseError + "Checked", expected.isChecked(),
+ actual.isChecked());
+ Assert.assertEquals(baseError + "Separator", expected.isSeparator(),
+ actual.isSeparator());
+ Assert.assertEquals(baseError + "Enabled", expected.isEnabled(),
+ actual.isEnabled());
+
+ Assert.assertEquals(baseError + "Text", expected.getText(),
+ actual.getText());
+ Assert.assertEquals(baseError + "Description",
+ expected.getDescription(), actual.getDescription());
+ Assert.assertEquals(baseError + "Style Name", expected.getStyleName(),
+ actual.getStyleName());
+
+ if (expected.getIcon() != null) {
+ Assert.assertNotNull(baseError + "Icon was null", actual.getIcon());
+ } else {
+ if (actual.getIcon() != null) {
+ Assert.fail(baseError + "Icon should've been null");
+ }
+ }
+
+ Assert.assertEquals(baseError + "Has Children", expected.hasChildren(),
+ actual.hasChildren());
+ if (expected.hasChildren()) {
+ List<MenuItem> children = expected.getChildren();
+ List<MenuItem> actualChildren = actual.getChildren();
+ Assert.assertEquals(baseError + "Child count", children.size(),
+ actualChildren.size());
+ for (int i = 0; i < children.size(); ++i) {
+ compareMenus(children.get(i), actualChildren.get(i));
+ }
+ }
+ }
} \ No newline at end of file