package org.skyscreamer.nevado.jms.properties; import junit.framework.Assert; import org.junit.Test; import org.skyscreamer.nevado.jms.AbstractJMSTest; import org.skyscreamer.nevado.jms.util.RandomData; import javax.jms.JMSException; import javax.jms.Message; import java.util.Enumeration; import java.util.Properties; /** * Test for section 3.5.6 of the JMS 1.1 Specification. * * @author Carter Page <carter@skyscreamer.org> */ public class PropertyIteratorTest extends AbstractJMSTest { @Test public void testIterator() throws JMSException { Message msg = createSession().createMessage(); Properties properties = new Properties(); for(int i = 0 ; i < 100 ; ++i) { String key = "a" + i; String value = RandomData.readString(); properties.setProperty(key, value); msg.setStringProperty(key, value); } Message msgOut = sendAndReceive(msg); Enumeration e = msg.getPropertyNames(); int count = 0; while(e.hasMoreElements()) { ++count; String key = (String)e.nextElement(); String value = properties.getProperty(key); Assert.assertEquals(value, msg.getStringProperty(key)); } Assert.assertEquals("Message did not return the expected # of properties", properties.size(), count); } }