[jboss-cvs] JBoss Messaging SVN: r7910 - in branches/Branch_1_4: tests/src/org/jboss/test/messaging/jms/selector and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Nov 26 07:46:46 EST 2009


Author: gaohoward
Date: 2009-11-26 07:46:46 -0500 (Thu, 26 Nov 2009)
New Revision: 7910

Modified:
   branches/Branch_1_4/src/main/org/jboss/jms/server/selector/SelectorParser.jj
   branches/Branch_1_4/tests/src/org/jboss/test/messaging/jms/selector/SelectorTest.java
Log:
JBMESSAGING-1770


Modified: branches/Branch_1_4/src/main/org/jboss/jms/server/selector/SelectorParser.jj
===================================================================
--- branches/Branch_1_4/src/main/org/jboss/jms/server/selector/SelectorParser.jj	2009-11-25 16:57:31 UTC (rev 7909)
+++ branches/Branch_1_4/src/main/org/jboss/jms/server/selector/SelectorParser.jj	2009-11-26 12:46:46 UTC (rev 7910)
@@ -7,6 +7,7 @@
 
 options {
    LOOKAHEAD=1;
+   UNICODE_INPUT=true;
 /*
    DEBUG_PARSER=true;
    DEBUG_LOOKAHEAD=true;

Modified: branches/Branch_1_4/tests/src/org/jboss/test/messaging/jms/selector/SelectorTest.java
===================================================================
--- branches/Branch_1_4/tests/src/org/jboss/test/messaging/jms/selector/SelectorTest.java	2009-11-25 16:57:31 UTC (rev 7909)
+++ branches/Branch_1_4/tests/src/org/jboss/test/messaging/jms/selector/SelectorTest.java	2009-11-26 12:46:46 UTC (rev 7910)
@@ -542,6 +542,90 @@
       }
    }
 
+   public void testWithUnicodeSelector() throws Exception
+   {      
+      String selector1 = "beatle = '约翰'";
+      String selector2 = "beatle = '保罗'";
+      String selector3 = "beatle = '乔治'";
+      String selector4 = "beatle = '林戈'";
+      String selector5 = "beatle = '耶稣'";
+
+      Connection conn = null;
+      
+      try
+      {        
+         conn = cf.createConnection();
+         conn.start();
+         Session sess = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);
+         MessageConsumer cons1 = sess.createConsumer(topic1, selector1);
+         MessageConsumer cons2 = sess.createConsumer(topic1, selector2);
+         MessageConsumer cons3 = sess.createConsumer(topic1, selector3);
+         MessageConsumer cons4 = sess.createConsumer(topic1, selector4);
+         MessageConsumer cons5 = sess.createConsumer(topic1, selector5);
+   
+         Message m1 = sess.createMessage();
+         m1.setStringProperty("beatle", "约翰");
+   
+         Message m2 = sess.createMessage();
+         m2.setStringProperty("beatle", "保罗");
+   
+         Message m3 = sess.createMessage();
+         m3.setStringProperty("beatle", "乔治");
+   
+         Message m4 = sess.createMessage();
+         m4.setStringProperty("beatle", "林戈");
+   
+         Message m5 = sess.createMessage();
+         m5.setStringProperty("beatle", "耶稣");
+   
+         MessageProducer prod = sess.createProducer(topic1);
+   
+         prod.send(m1);
+         prod.send(m2);
+         prod.send(m3);
+         prod.send(m4);
+         prod.send(m5);
+   
+         Message r1 = cons1.receive(500);
+         assertNotNull(r1);
+         Message n = cons1.receive(500);
+         assertNull(n);
+
+         Message r2 = cons2.receive(500);
+         assertNotNull(r2);
+         n = cons2.receive(500);
+         assertNull(n);
+   
+         Message r3 = cons3.receive(500);
+         assertNotNull(r3);
+         n = cons3.receive(500);
+         assertNull(n);
+   
+         Message r4 = cons4.receive(500);
+         assertNotNull(r4);
+         n = cons4.receive(500);
+         assertNull(n);
+   
+         Message r5 = cons5.receive(500);
+         assertNotNull(r5);
+         n = cons5.receive(500);
+         assertNull(n);
+
+         assertEquals("约翰", r1.getStringProperty("beatle"));
+         assertEquals("保罗", r2.getStringProperty("beatle"));
+         assertEquals("乔治", r3.getStringProperty("beatle"));
+         assertEquals("林戈", r4.getStringProperty("beatle"));
+         assertEquals("耶稣", r5.getStringProperty("beatle"));
+      }
+      finally
+      {
+         if (conn != null)
+         {
+            conn.close();
+         }
+      }
+   }
+
    public void testManyConsumersWithDifferentSelectors() throws Exception
    {
       Connection conn = null;




More information about the jboss-cvs-commits mailing list