diff options
-rw-r--r-- | server/src/com/vaadin/server/communication/MetadataWriter.java | 1 | ||||
-rw-r--r-- | server/tests/src/com/vaadin/server/communication/MetadataWriterTest.java | 14 |
2 files changed, 15 insertions, 0 deletions
diff --git a/server/src/com/vaadin/server/communication/MetadataWriter.java b/server/src/com/vaadin/server/communication/MetadataWriter.java index 17c893fe40..9c46e64692 100644 --- a/server/src/com/vaadin/server/communication/MetadataWriter.java +++ b/server/src/com/vaadin/server/communication/MetadataWriter.java @@ -70,6 +70,7 @@ public class MetadataWriter implements Serializable { if (metaOpen) { writer.write(", "); } + metaOpen = true; writer.write("\"async\":true"); } diff --git a/server/tests/src/com/vaadin/server/communication/MetadataWriterTest.java b/server/tests/src/com/vaadin/server/communication/MetadataWriterTest.java index dee37ddc7f..afae14007e 100644 --- a/server/tests/src/com/vaadin/server/communication/MetadataWriterTest.java +++ b/server/tests/src/com/vaadin/server/communication/MetadataWriterTest.java @@ -18,6 +18,7 @@ package com.vaadin.server.communication; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; +import java.io.IOException; import java.io.StringWriter; import org.junit.Assert; @@ -92,4 +93,17 @@ public class MetadataWriterTest { "{\"timedRedirect\":{\"interval\":15,\"url\":\"\"}}", writer .getBuffer().toString()); } + + @Test + public void writeAsyncWithSystemMessages() throws IOException { + WrappedSession wrappedSession = mock(WrappedSession.class); + when(session.getSession()).thenReturn(wrappedSession); + + disableSessionExpirationMessages(messages); + + new MetadataWriter().write(ui, writer, false, true, messages); + Assert.assertEquals( + "{\"async\":true,\"timedRedirect\":{\"interval\":15,\"url\":\"\"}}", + writer.getBuffer().toString()); + } } |