diff options
author | Eike Stepper | 2009-06-05 10:19:01 +0000 |
---|---|---|
committer | Eike Stepper | 2009-06-05 10:19:01 +0000 |
commit | 705977fa53952a5324e5235d806ddd32a1f31898 (patch) | |
tree | cbe78ec8601b9aad0ee4c49878ad7e20b6eeb483 /plugins | |
parent | 0534373b3b4709182214b03ead82a04fa5b18477 (diff) | |
download | cdo-705977fa53952a5324e5235d806ddd32a1f31898.tar.gz cdo-705977fa53952a5324e5235d806ddd32a1f31898.tar.xz cdo-705977fa53952a5324e5235d806ddd32a1f31898.zip |
[242005] Provide a HeartBeatPotocol
https://bugs.eclipse.org/bugs/show_bug.cgi?id=242005
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/org.eclipse.net4j.tests/src/org/eclipse/net4j/tests/SignalTest.java | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/plugins/org.eclipse.net4j.tests/src/org/eclipse/net4j/tests/SignalTest.java b/plugins/org.eclipse.net4j.tests/src/org/eclipse/net4j/tests/SignalTest.java index e389f1faf3..29343c6723 100644 --- a/plugins/org.eclipse.net4j.tests/src/org/eclipse/net4j/tests/SignalTest.java +++ b/plugins/org.eclipse.net4j.tests/src/org/eclipse/net4j/tests/SignalTest.java @@ -11,14 +11,19 @@ package org.eclipse.net4j.tests; import org.eclipse.net4j.connector.IConnector; +import org.eclipse.net4j.internal.tcp.TCPConnector; import org.eclipse.net4j.tests.data.TinyData; import org.eclipse.net4j.tests.signal.ArrayRequest; import org.eclipse.net4j.tests.signal.AsyncRequest; import org.eclipse.net4j.tests.signal.IntRequest; import org.eclipse.net4j.tests.signal.StringRequest; import org.eclipse.net4j.tests.signal.TestSignalProtocol; +import org.eclipse.net4j.util.ReflectUtil; import org.eclipse.net4j.util.om.OMPlatform; +import java.io.IOException; +import java.lang.reflect.Field; +import java.nio.channels.SocketChannel; import java.util.Arrays; /** @@ -98,4 +103,33 @@ public class SignalTest extends AbstractProtocolTest } } } + + public void testCloseSocketChannel() throws Exception + { + TestSignalProtocol protocol = null; + + try + { + IConnector connector = startTransport(); + protocol = new TestSignalProtocol(connector); + + closeSocketChannel((TCPConnector)getAcceptor().getAcceptedConnectors()[0]); + sleep(1000); + assertEquals(false, protocol.isActive()); + } + finally + { + if (protocol != null) + { + protocol.close(); + } + } + } + + private void closeSocketChannel(TCPConnector connector) throws IOException + { + Field field = ReflectUtil.getField(TCPConnector.class, "socketChannel"); + SocketChannel socketChannel = (SocketChannel)ReflectUtil.getValue(field, connector); + socketChannel.close(); + } } |