Change-Id: Ie239bf110909f8acb47f2141431965061f9ac407tags/7.4.0.beta1
@@ -16,7 +16,7 @@ | |||
<property name="vaadinPush.debug.js" location="${result.dir}/js/VAADIN/vaadinPush.debug.js" /> | |||
<!-- Keep the version number in sync with ivy.xml, server/src/com/vaadin/server/Constants.java --> | |||
<property name="atmosphere.runtime.version" value="2.1.2.vaadin5" /> | |||
<property name="atmosphere.runtime.version" value="2.1.2.vaadin6" /> | |||
<property name="jquery.js" location="lib/jquery/jquery-1.11.0.js" /> | |||
<path id="classpath.compile.custom" /> |
@@ -1,7 +1,7 @@ | |||
<?xml version="1.0" encoding="UTF-8"?> | |||
<!DOCTYPE ivy-module [ | |||
<!-- Keep the version number in sync with build.xml --> | |||
<!ENTITY atmosphere.runtime.version "2.1.2.vaadin5"> | |||
<!ENTITY atmosphere.runtime.version "2.1.2.vaadin6"> | |||
<!ENTITY atmosphere.js.version "2.1.5.vaadin4"> | |||
]> |
@@ -67,7 +67,7 @@ public interface Constants { | |||
// Keep the version number in sync with push/build.xml and other locations | |||
// listed in that file | |||
static final String REQUIRED_ATMOSPHERE_RUNTIME_VERSION = "2.1.2.vaadin5"; | |||
static final String REQUIRED_ATMOSPHERE_RUNTIME_VERSION = "2.1.2.vaadin6"; | |||
static final String INVALID_ATMOSPHERE_VERSION_WARNING = "\n" | |||
+ "=================================================================\n" |
@@ -24,6 +24,6 @@ import com.vaadin.tests.tb3.WebsocketTest; | |||
public class BasicPushWebsocketTest extends BasicPushTest { | |||
@Override | |||
public List<DesiredCapabilities> getBrowsersToTest() { | |||
return WebsocketTest.getWebsocketBrowsers(); | |||
return getBrowsersSupportingWebSocket(); | |||
} | |||
} |
@@ -26,6 +26,6 @@ public class ExtremelyLongPushTimeWebsocketTest extends | |||
@Override | |||
public List<DesiredCapabilities> getBrowsersToTest() { | |||
return WebsocketTest.getWebsocketBrowsers(); | |||
return getBrowsersSupportingWebSocket(); | |||
} | |||
} |
@@ -30,6 +30,6 @@ public class IdlePushChannelWebsocketTest extends IdlePushChannelTest { | |||
@Override | |||
public List<DesiredCapabilities> getBrowsersToTest() { | |||
return WebsocketTest.getWebsocketBrowsers(); | |||
return getBrowsersSupportingWebSocket(); | |||
} | |||
} |
@@ -25,7 +25,7 @@ public class ReconnectWebsocketTest extends ReconnectTest { | |||
@Override | |||
public List<DesiredCapabilities> getBrowsersToTest() { | |||
return WebsocketTest.getWebsocketBrowsers(); | |||
return getBrowsersSupportingWebSocket(); | |||
} | |||
@Override |
@@ -42,6 +42,6 @@ public class RefreshCloseConnectionTest extends MultiBrowserTest { | |||
@Override | |||
public List<DesiredCapabilities> getBrowsersToTest() { | |||
return WebsocketTest.getWebsocketBrowsers(); | |||
return getBrowsersSupportingWebSocket(); | |||
} | |||
} |
@@ -0,0 +1,23 @@ | |||
package com.vaadin.tests.push; | |||
import com.vaadin.annotations.Push; | |||
import com.vaadin.server.VaadinRequest; | |||
import com.vaadin.tests.components.AbstractTestUI; | |||
import com.vaadin.ui.TextArea; | |||
@Push | |||
public class SendMultibyteCharacters extends AbstractTestUI { | |||
@Override | |||
protected void setup(VaadinRequest request) { | |||
TextArea textArea = new TextArea(); | |||
textArea.setImmediate(true); | |||
addComponent(textArea); | |||
} | |||
@Override | |||
protected Integer getTicketNumber() { | |||
return 14674; | |||
} | |||
} |
@@ -0,0 +1,9 @@ | |||
package com.vaadin.tests.push; | |||
public class SendMultibyteCharactersLongPollingTest extends SendMultibyteCharactersTest { | |||
@Override | |||
protected String getTransport() { | |||
return "long-polling"; | |||
} | |||
} |
@@ -0,0 +1,9 @@ | |||
package com.vaadin.tests.push; | |||
public class SendMultibyteCharactersStreamingTest extends SendMultibyteCharactersTest { | |||
@Override | |||
protected String getTransport() { | |||
return "streaming"; | |||
} | |||
} |
@@ -0,0 +1,42 @@ | |||
package com.vaadin.tests.push; | |||
import com.vaadin.testbench.By; | |||
import com.vaadin.testbench.elements.TextAreaElement; | |||
import com.vaadin.tests.annotations.TestCategory; | |||
import com.vaadin.tests.tb3.MultiBrowserTest; | |||
import org.junit.Test; | |||
@TestCategory("push") | |||
public abstract class SendMultibyteCharactersTest extends MultiBrowserTest { | |||
@Override | |||
protected Class<?> getUIClass() { | |||
return SendMultibyteCharacters.class; | |||
} | |||
protected abstract String getTransport(); | |||
@Test | |||
public void transportSupportsMultibyteCharacters() { | |||
setDebug(true); | |||
openTestURL("transport=" + getTransport()); | |||
openDebugLogTab(); | |||
TextAreaElement textArea = $(TextAreaElement.class).first(); | |||
StringBuilder text = new StringBuilder(); | |||
for(int i=0;i < 20;i++) { | |||
text.append("之は日本語です、テストです。"); | |||
} | |||
textArea.sendKeys(text.toString()); | |||
clearDebugMessages(); | |||
findElement(By.tagName("body")).click(); | |||
waitForDebugMessage("Variable burst to be sent to server:", 5); | |||
waitForDebugMessage("Handling message from server", 10); | |||
} | |||
} |
@@ -0,0 +1,19 @@ | |||
package com.vaadin.tests.push; | |||
import org.openqa.selenium.remote.DesiredCapabilities; | |||
import java.util.List; | |||
public class SendMultibyteCharactersWebSocketTest extends SendMultibyteCharactersTest { | |||
@Override | |||
public List<DesiredCapabilities> getBrowsersToTest() { | |||
return getBrowsersSupportingWebSocket(); | |||
} | |||
@Override | |||
protected String getTransport() { | |||
return "websocket"; | |||
} | |||
} |
@@ -40,6 +40,16 @@ import org.openqa.selenium.remote.DesiredCapabilities; | |||
*/ | |||
public abstract class MultiBrowserTest extends PrivateTB3Configuration { | |||
protected List<DesiredCapabilities> getBrowsersSupportingWebSocket() { | |||
List<DesiredCapabilities> browsers = new ArrayList<DesiredCapabilities>(getAllBrowsers()); | |||
browsers.remove(Browser.IE8.getDesiredCapabilities()); | |||
browsers.remove(Browser.IE9.getDesiredCapabilities()); | |||
browsers.remove(Browser.PHANTOMJS.getDesiredCapabilities()); | |||
return browsers; | |||
} | |||
protected List<DesiredCapabilities> getBrowsersExcludingPhantomJS() { | |||
List<DesiredCapabilities> browsers = new ArrayList<DesiredCapabilities>(getAllBrowsers()); | |||
@@ -35,30 +35,10 @@ import com.vaadin.tests.tb3.MultiBrowserTest.Browser; | |||
* @author Vaadin Ltd | |||
*/ | |||
@TestCategory("push") | |||
public abstract class WebsocketTest extends PrivateTB3Configuration { | |||
private static List<DesiredCapabilities> websocketBrowsers = new ArrayList<DesiredCapabilities>(); | |||
static { | |||
websocketBrowsers.addAll(MultiBrowserTest.getAllBrowsers()); | |||
websocketBrowsers.remove(Browser.IE8.getDesiredCapabilities()); | |||
websocketBrowsers.remove(Browser.IE9.getDesiredCapabilities()); | |||
websocketBrowsers.remove(Browser.PHANTOMJS.getDesiredCapabilities()); | |||
} | |||
/** | |||
* @return All supported browsers which are actively tested and support | |||
* websockets | |||
*/ | |||
public static List<DesiredCapabilities> getWebsocketBrowsers() { | |||
return Collections.unmodifiableList(websocketBrowsers); | |||
} | |||
public abstract class WebsocketTest extends MultiBrowserTest { | |||
/* | |||
* (non-Javadoc) | |||
* | |||
* @see com.vaadin.tests.tb3.AbstractTB3Test#getBrowserToRunOn() | |||
*/ | |||
@Override | |||
public List<DesiredCapabilities> getBrowsersToTest() { | |||
return new ArrayList<DesiredCapabilities>(getWebsocketBrowsers()); | |||
return new ArrayList<DesiredCapabilities>(getBrowsersSupportingWebSocket()); | |||
} | |||
} |