[jboss-cvs] JBossAS SVN: r109699 - branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Dec 3 06:22:33 EST 2010


Author: mlinhard
Date: 2010-12-03 06:22:32 -0500 (Fri, 03 Dec 2010)
New Revision: 109699

Modified:
   branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test/MemcachedClientTestCase.java
   branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test/MemcachedReplicationTestCase.java
   branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test/MemcachedSession.java
   branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test/RESTClientTestCase.java
Log:
updated memcached rest testcases, added timeout capability to MemcachedSession

Modified: branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test/MemcachedClientTestCase.java
===================================================================
--- branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test/MemcachedClientTestCase.java	2010-12-03 11:15:14 UTC (rev 109698)
+++ branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test/MemcachedClientTestCase.java	2010-12-03 11:22:32 UTC (rev 109699)
@@ -55,7 +55,7 @@
 		super.setUp();
 		// to run original memcached server: memcached -p 11212
 		//mc = new MemcachedSession(ENCODING, "localhost", 11212); // to run against original memcached server
-		mc = new MemcachedSession(ENCODING, getServers()[0], Integer.getInteger("jboss.infinispan.memcached.server.port", 11211)); // to run against infinispan memcached server
+		mc = new MemcachedSession(ENCODING, getServers()[0], Integer.getInteger("jboss.infinispan.memcached.server.port", 11211), 10000); // to run against infinispan memcached server
 		mc.delete(KEY_A);
 		mc.delete(KEY_B);
 		mc.delete(KEY_C);
@@ -644,6 +644,7 @@
 		assertTrue(mc.readln().startsWith("ERROR"));
 	}
 	
+	//https://jira.jboss.org/browse/JBPAPP-5473
 	public void testBogusCommandPipeline() throws Exception {
 		mc.writeln("boguscommand");
 		mc.writeln("delete " + KEY_A);

Modified: branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test/MemcachedReplicationTestCase.java
===================================================================
--- branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test/MemcachedReplicationTestCase.java	2010-12-03 11:15:14 UTC (rev 109698)
+++ branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test/MemcachedReplicationTestCase.java	2010-12-03 11:22:32 UTC (rev 109699)
@@ -48,8 +48,8 @@
 	protected void setUp() throws Exception {
 		super.setUp();
 		int memcachedPort = Integer.getInteger("jboss.infinispan.memcached.server.port", 11211);
-		mc1 = new MemcachedSession(ENCODING, getServers()[0], memcachedPort); // to run against infinispan memcached server
-		mc2 = new MemcachedSession(ENCODING, getServers()[1], memcachedPort); // to run against infinispan memcached server
+		mc1 = new MemcachedSession(ENCODING, getServers()[0], memcachedPort, 10000); // to run against infinispan memcached server
+		mc2 = new MemcachedSession(ENCODING, getServers()[1], memcachedPort, 10000); // to run against infinispan memcached server
 		mc1.delete(KEY_A);
 		mc1.delete(KEY_B);
 		mc1.delete(KEY_C);
@@ -192,4 +192,21 @@
 		mc2.flush();
 		assertEquals("0", mc2.readln());
 	}
+	
+	public void testReplicatedFlushAll() throws Exception {
+		// flush_all command is not replicated across cluster
+		// it runs locally
+		mc1.set(KEY_A, "1");
+		mc1.set(KEY_B, "2");
+		mc1.set(KEY_C, "3");
+		mc2.writeln("flush_all");
+		mc2.flush();
+		assertEquals("OK", mc2.readln());
+//		assertNull(mc1.get(KEY_A));
+//		assertNull(mc1.get(KEY_B));
+//		assertNull(mc1.get(KEY_C));
+		assertEquals("1", mc1.get(KEY_A));
+		assertEquals("2", mc1.get(KEY_B));
+		assertEquals("3", mc1.get(KEY_C));
+	}
 }
\ No newline at end of file

Modified: branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test/MemcachedSession.java
===================================================================
--- branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test/MemcachedSession.java	2010-12-03 11:15:14 UTC (rev 109698)
+++ branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test/MemcachedSession.java	2010-12-03 11:22:32 UTC (rev 109699)
@@ -40,6 +40,7 @@
  */
 public class MemcachedSession {
 	public static final int DEFAULT_MEMCACHED_PORT = 11211;
+	public static final int DEFAULT_TIMEOUT = 10000;
 	/**
 	 * is there any standard replacement for this ?
 	 * somthing that can read both binary data and also strings when needed.
@@ -95,12 +96,13 @@
 	private StringAndBytesReader in;
 	
 	public MemcachedSession() throws IOException {
-		this("UTF-8", "localhost", DEFAULT_MEMCACHED_PORT);
+		this("UTF-8", "localhost", DEFAULT_MEMCACHED_PORT, DEFAULT_TIMEOUT);
 	}
 	
-	public MemcachedSession(String enc, String host, int port) throws IOException {
+	public MemcachedSession(String enc, String host, int port, int timeout) throws IOException {
 		encoding = enc;
 		socket = new Socket(host, port);
+		socket.setSoTimeout(timeout);
 		out = new PrintWriter(new OutputStreamWriter(socket.getOutputStream(), encoding));
 		in = new StringAndBytesReader(socket.getInputStream(), encoding);
 	}

Modified: branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test/RESTClientTestCase.java
===================================================================
--- branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test/RESTClientTestCase.java	2010-12-03 11:15:14 UTC (rev 109698)
+++ branches/JBPAPP_5_1_datagrid/testsuite/src/main/org/jboss/test/cluster/datagrid/test/RESTClientTestCase.java	2010-12-03 11:22:32 UTC (rev 109699)
@@ -402,6 +402,24 @@
 		assertEquals("CONTENT", ts.getContent());
 	}
 	
+	public void testPutKnownClass() throws Exception {
+		String fullPathKey = fullPathKey(KEY_A); 
+
+		ByteArrayOutputStream bout = new ByteArrayOutputStream();
+		ObjectOutputStream oo = new ObjectOutputStream(bout);
+		Integer i1 = new Integer(42);
+		oo.writeObject(i1);
+		oo.flush();
+		byte[] byteData = bout.toByteArray();
+		put(fullPathKey, byteData, "application/x-java-serialized-object");
+		byte[] bytesBack = get(fullPathKey, HttpServletResponse.SC_OK, "Accept", "application/x-java-serialized-object").getResponseBody();
+		assertEquals(byteData.length, bytesBack.length);
+		ObjectInputStream oin = new ObjectInputStream(new ByteArrayInputStream(
+				bytesBack));
+		Integer i2 = (Integer) oin.readObject();
+		assertEquals(i1, i2);
+	}
+	
 	public void testETagChanges() throws Exception {
 		String fullPathKey = fullPathKey(KEY_A); 
 		put(fullPathKey, "data", "application/text");



More information about the jboss-cvs-commits mailing list