aboutsummaryrefslogtreecommitdiffstats
path: root/tests/server-side/com/vaadin
diff options
context:
space:
mode:
authorHenri Sara <hesara@vaadin.com>2012-06-20 17:38:17 +0300
committerHenri Sara <hesara@vaadin.com>2012-06-20 17:38:17 +0300
commitd83a57c7facca417e4e92cacaa64ee9b6dbe4597 (patch)
tree22d127d79edea56a6c20bdd43b6bc24bb008a1da /tests/server-side/com/vaadin
parent93e9eaf7abfad12d200e9f1805630b7b04daf7e2 (diff)
parent0f8f9d32e0584743c858afeec12e57dedf0a5f71 (diff)
downloadvaadin-framework-d83a57c7facca417e4e92cacaa64ee9b6dbe4597.tar.gz
vaadin-framework-d83a57c7facca417e4e92cacaa64ee9b6dbe4597.zip
Merge branch 'master' into gwt
Diffstat (limited to 'tests/server-side/com/vaadin')
-rw-r--r--tests/server-side/com/vaadin/tests/VaadinClasses.java14
-rw-r--r--tests/server-side/com/vaadin/tests/server/TestThemeNames.java38
-rw-r--r--tests/server-side/com/vaadin/tests/server/component/table/TableSerialization.java24
-rw-r--r--tests/server-side/com/vaadin/tests/server/component/tabsheet/TestTabSheet.java63
-rw-r--r--tests/server-side/com/vaadin/tests/server/navigator/NavigatorTest.java6
-rw-r--r--tests/server-side/com/vaadin/tests/server/navigator/UriFragmentManagerTest.java24
-rw-r--r--tests/server-side/com/vaadin/tests/util/UniqueSerializableTest.java33
7 files changed, 185 insertions, 17 deletions
diff --git a/tests/server-side/com/vaadin/tests/VaadinClasses.java b/tests/server-side/com/vaadin/tests/VaadinClasses.java
index b74af660e4..0ee193e8f1 100644
--- a/tests/server-side/com/vaadin/tests/VaadinClasses.java
+++ b/tests/server-side/com/vaadin/tests/VaadinClasses.java
@@ -15,8 +15,6 @@ import java.util.Enumeration;
import java.util.List;
import java.util.jar.JarEntry;
-import org.junit.Test;
-
import com.vaadin.Application;
import com.vaadin.ui.Component;
import com.vaadin.ui.ComponentContainer;
@@ -29,6 +27,9 @@ import com.vaadin.ui.PopupView;
import com.vaadin.ui.Root;
import com.vaadin.ui.VerticalSplitPanel;
import com.vaadin.ui.Window;
+import com.vaadin.ui.themes.BaseTheme;
+
+import org.junit.Test;
@SuppressWarnings("deprecation")
public class VaadinClasses {
@@ -71,6 +72,15 @@ public class VaadinClasses {
}
}
+ public static List<Class<? extends BaseTheme>> getThemeClasses() {
+ try {
+ return findClasses(BaseTheme.class, "com.vaadin.ui.themes");
+ } catch (IOException e) {
+ e.printStackTrace();
+ return null;
+ }
+ }
+
public static List<Class<? extends Object>> getAllServerSideClasses() {
try {
return findClassesNoTests(Object.class, "com.vaadin", new String[] {
diff --git a/tests/server-side/com/vaadin/tests/server/TestThemeNames.java b/tests/server-side/com/vaadin/tests/server/TestThemeNames.java
new file mode 100644
index 0000000000..22fe315730
--- /dev/null
+++ b/tests/server-side/com/vaadin/tests/server/TestThemeNames.java
@@ -0,0 +1,38 @@
+package com.vaadin.tests.server;
+
+import java.io.File;
+import java.lang.reflect.Field;
+import java.util.List;
+
+import junit.framework.TestCase;
+
+import com.vaadin.tests.VaadinClasses;
+import com.vaadin.ui.themes.BaseTheme;
+
+public class TestThemeNames extends TestCase {
+ public void testThemeNames() {
+ File baseDir = new File(SourceFileChecker.getBaseDir()
+ + "WebContent/VAADIN/themes/");
+
+ List<Class<? extends BaseTheme>> themeClasses = VaadinClasses
+ .getThemeClasses();
+ for (Class<? extends BaseTheme> themeClass : themeClasses) {
+ try {
+ Field field = themeClass.getField("THEME_NAME");
+ String themeName = (String) field.get(null);
+
+ File themeDir = new File(baseDir, themeName);
+ File styleFile = new File(themeDir, "styles.css");
+
+ assertTrue("Can't find " + styleFile + " for theme "
+ + themeClass.getName(), styleFile.exists());
+
+ // Test that casing matches
+ assertEquals(themeDir.getCanonicalFile().getName(), themeName);
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ }
+ }
+
+}
diff --git a/tests/server-side/com/vaadin/tests/server/component/table/TableSerialization.java b/tests/server-side/com/vaadin/tests/server/component/table/TableSerialization.java
new file mode 100644
index 0000000000..44dcd60fa5
--- /dev/null
+++ b/tests/server-side/com/vaadin/tests/server/component/table/TableSerialization.java
@@ -0,0 +1,24 @@
+package com.vaadin.tests.server.component.table;
+
+import junit.framework.TestCase;
+
+import org.apache.commons.lang.SerializationUtils;
+
+import com.vaadin.ui.Table;
+
+public class TableSerialization extends TestCase {
+
+ public void testSerialization() {
+ Table t = new Table();
+ byte[] ser = SerializationUtils.serialize(t);
+ Table t2 = (Table) SerializationUtils.deserialize(ser);
+
+ }
+ public void testSerializationWithRowHeaders() {
+ Table t = new Table();
+ t.setRowHeaderMode(Table.ROW_HEADER_MODE_EXPLICIT);
+ t.setColumnWidth(null, 100);
+ byte[] ser = SerializationUtils.serialize(t);
+ Table t2 = (Table) SerializationUtils.deserialize(ser);
+ }
+}
diff --git a/tests/server-side/com/vaadin/tests/server/component/tabsheet/TestTabSheet.java b/tests/server-side/com/vaadin/tests/server/component/tabsheet/TestTabSheet.java
index 40d0ffd17d..0ef8ae5a76 100644
--- a/tests/server-side/com/vaadin/tests/server/component/tabsheet/TestTabSheet.java
+++ b/tests/server-side/com/vaadin/tests/server/component/tabsheet/TestTabSheet.java
@@ -2,6 +2,8 @@ package com.vaadin.tests.server.component.tabsheet;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertSame;
import java.util.Iterator;
@@ -158,4 +160,65 @@ public class TestTabSheet {
tabSheet.setSelectedTab(123);
assertEquals(tab1.getComponent(), tabSheet.getSelectedTab());
}
+
+ @Test
+ public void replaceComponent() {
+ TabSheet tabSheet = new TabSheet();
+ Label lbl1 = new Label("aaa");
+ Label lbl2 = new Label("bbb");
+ Label lbl3 = new Label("ccc");
+ Label lbl4 = new Label("ddd");
+
+ Tab tab1 = tabSheet.addTab(lbl1);
+ tab1.setCaption("tab1");
+ tab1.setClosable(true);
+ Tab tab2 = tabSheet.addTab(lbl2);
+ tab2.setDescription("description");
+ tab2.setEnabled(false);
+
+ // Replace component not in tabsheet with one already in tabsheet -
+ // should be no-op
+ tabSheet.replaceComponent(lbl3, lbl2);
+ assertEquals(2, tabSheet.getComponentCount());
+ assertSame(tab1, tabSheet.getTab(lbl1));
+ assertSame(tab2, tabSheet.getTab(lbl2));
+ assertNull(tabSheet.getTab(lbl3));
+
+ // Replace component not in tabsheet with one not in tabsheet either
+ // should add lbl4 as last tab
+ tabSheet.replaceComponent(lbl3, lbl4);
+ assertEquals(3, tabSheet.getComponentCount());
+ assertSame(tab1, tabSheet.getTab(lbl1));
+ assertSame(tab2, tabSheet.getTab(lbl2));
+ assertEquals(2, tabSheet.getTabPosition(tabSheet.getTab(lbl4)));
+
+ // Replace component in tabsheet with another
+ // should swap places, tab association should stay the same but tabs
+ // should swap metadata
+ tabSheet.replaceComponent(lbl1, lbl2);
+ assertSame(tab1, tabSheet.getTab(lbl1));
+ assertSame(tab2, tabSheet.getTab(lbl2));
+ assertEquals(false, tab1.isClosable());
+ assertEquals(true, tab2.isClosable());
+ assertEquals(false, tab1.isEnabled());
+ assertEquals(true, tab2.isEnabled());
+ assertEquals("description", tab1.getDescription());
+ assertEquals(null, tab2.getDescription());
+ assertEquals(3, tabSheet.getComponentCount());
+ assertEquals(1, tabSheet.getTabPosition(tabSheet.getTab(lbl1)));
+ assertEquals(0, tabSheet.getTabPosition(tabSheet.getTab(lbl2)));
+
+ // Replace component in tabsheet with one not in tabsheet
+ // should create a new tab instance for the new component, old tab
+ // instance should become unattached
+ // tab metadata should be copied from old to new
+ tabSheet.replaceComponent(lbl1, lbl3);
+ assertEquals(3, tabSheet.getComponentCount());
+ assertNull(tabSheet.getTab(lbl1));
+ assertNull(tab1.getComponent());
+ assertNotNull(tabSheet.getTab(lbl3));
+ assertEquals(false, tabSheet.getTab(lbl3).isEnabled());
+ assertEquals("description", tab1.getDescription());
+ assertEquals(1, tabSheet.getTabPosition(tabSheet.getTab(lbl3)));
+ }
}
diff --git a/tests/server-side/com/vaadin/tests/server/navigator/NavigatorTest.java b/tests/server-side/com/vaadin/tests/server/navigator/NavigatorTest.java
index ab983b4022..03f49d4ab6 100644
--- a/tests/server-side/com/vaadin/tests/server/navigator/NavigatorTest.java
+++ b/tests/server-side/com/vaadin/tests/server/navigator/NavigatorTest.java
@@ -19,9 +19,9 @@ import com.vaadin.navigator.ViewChangeListener;
import com.vaadin.navigator.ViewChangeListener.ViewChangeEvent;
import com.vaadin.navigator.ViewDisplay;
import com.vaadin.navigator.ViewProvider;
+import com.vaadin.terminal.Page;
import com.vaadin.tests.server.navigator.ClassBasedViewProviderTest.TestView;
import com.vaadin.tests.server.navigator.ClassBasedViewProviderTest.TestView2;
-import com.vaadin.ui.Root;
public class NavigatorTest extends TestCase {
@@ -366,9 +366,9 @@ public class NavigatorTest extends TestCase {
public void testDefaultDisplayType() {
IMocksControl control = EasyMock.createControl();
- Root root = control.createMock(Root.class);
+ Page page = control.createMock(Page.class);
- Navigator navigator = new Navigator(root);
+ Navigator navigator = new Navigator(page);
assertEquals("Default display should be a SimpleViewDisplay",
SimpleViewDisplay.class, navigator.getDisplay().getClass());
diff --git a/tests/server-side/com/vaadin/tests/server/navigator/UriFragmentManagerTest.java b/tests/server-side/com/vaadin/tests/server/navigator/UriFragmentManagerTest.java
index cfbf50f256..65294b2913 100644
--- a/tests/server-side/com/vaadin/tests/server/navigator/UriFragmentManagerTest.java
+++ b/tests/server-side/com/vaadin/tests/server/navigator/UriFragmentManagerTest.java
@@ -11,20 +11,20 @@ import org.easymock.IMocksControl;
import com.vaadin.navigator.Navigator;
import com.vaadin.navigator.Navigator.UriFragmentManager;
-import com.vaadin.ui.Root;
-import com.vaadin.ui.Root.FragmentChangedEvent;
+import com.vaadin.terminal.Page;
+import com.vaadin.terminal.Page.FragmentChangedEvent;
public class UriFragmentManagerTest extends TestCase {
public void testGetSetFragment() {
- Root root = EasyMock.createMock(Root.class);
- UriFragmentManager manager = new UriFragmentManager(root, null);
+ Page page = EasyMock.createMock(Page.class);
+ UriFragmentManager manager = new UriFragmentManager(page, null);
// prepare mock
- EasyMock.expect(root.getFragment()).andReturn("");
- root.setFragment("test");
- EasyMock.expect(root.getFragment()).andReturn("test");
- EasyMock.replay(root);
+ EasyMock.expect(page.getFragment()).andReturn("");
+ page.setFragment("test");
+ EasyMock.expect(page.getFragment()).andReturn("test");
+ EasyMock.replay(page);
// test manager using the mock
assertEquals("Incorrect fragment value", "", manager.getFragment());
@@ -36,15 +36,15 @@ public class UriFragmentManagerTest extends TestCase {
// create mocks
IMocksControl control = EasyMock.createControl();
Navigator navigator = control.createMock(Navigator.class);
- Root root = control.createMock(Root.class);
+ Page page = control.createMock(Page.class);
- UriFragmentManager manager = new UriFragmentManager(root, navigator);
+ UriFragmentManager manager = new UriFragmentManager(page, navigator);
- EasyMock.expect(root.getFragment()).andReturn("test");
+ EasyMock.expect(page.getFragment()).andReturn("test");
navigator.navigateTo("test");
control.replay();
- FragmentChangedEvent event = root.new FragmentChangedEvent(root,
+ FragmentChangedEvent event = page.new FragmentChangedEvent(page,
"oldtest");
manager.fragmentChanged(event);
}
diff --git a/tests/server-side/com/vaadin/tests/util/UniqueSerializableTest.java b/tests/server-side/com/vaadin/tests/util/UniqueSerializableTest.java
new file mode 100644
index 0000000000..578d983c4d
--- /dev/null
+++ b/tests/server-side/com/vaadin/tests/util/UniqueSerializableTest.java
@@ -0,0 +1,33 @@
+/*
+@VaadinApache2LicenseForJavaFiles@
+ */
+package com.vaadin.tests.util;
+
+import java.io.Serializable;
+
+import junit.framework.TestCase;
+
+import org.apache.commons.lang.SerializationUtils;
+
+import com.vaadin.ui.UniqueSerializable;
+
+public class UniqueSerializableTest extends TestCase implements Serializable {
+
+ public void testUniqueness() {
+ UniqueSerializable o1 = new UniqueSerializable() {
+ };
+ UniqueSerializable o2 = new UniqueSerializable() {
+ };
+ assertFalse(o1 == o2);
+ assertFalse(o1.equals(o2));
+ }
+
+ public void testSerialization() {
+ UniqueSerializable o1 = new UniqueSerializable() {
+ };
+ UniqueSerializable d1 = (UniqueSerializable) SerializationUtils
+ .deserialize(SerializationUtils.serialize(o1));
+ assertTrue(d1.equals(o1));
+ }
+
+}