diff options
author | Teemu Suo-Anttila <teemusa@vaadin.com> | 2015-04-02 13:49:17 +0300 |
---|---|---|
committer | Vaadin Code Review <review@vaadin.com> | 2015-04-08 12:25:46 +0000 |
commit | 9f95ac117ac55c54f6a3d69ab3bd9aa3d8f1ef76 (patch) | |
tree | 64a8776bac5246fcf50f2c7ae6701364959ee1d2 /server/tests | |
parent | 8f6a7b9d36caf30b39d5fe5e2a517f81ab7062d2 (diff) | |
download | vaadin-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.java | 62 |
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 |