utiltest.java

来自「JGRoups源码」· Java 代码 · 共 488 行 · 第 1/2 页

JAVA
488
字号
// $Id: UtilTest.java,v 1.17 2006/09/07 18:36:23 belaban Exp $package org.jgroups.tests;import junit.framework.Test;import junit.framework.TestCase;import junit.framework.TestSuite;import org.jgroups.*;import org.jgroups.conf.ClassConfigurator;import org.jgroups.stack.IpAddress;import org.jgroups.util.Util;import java.io.*;import java.util.ArrayList;import java.util.List;import java.util.Vector;import java.util.Properties;public class UtilTest extends TestCase {    static {        try {            ClassConfigurator.getInstance(true);        }        catch(ChannelException e) {            e.printStackTrace();        }    }    public UtilTest(String name) {        super(name);    }    public void testGetProperty() {        Properties props=new Properties();        props.setProperty("name", "Bela");        props.setProperty("key", "val");        System.setProperty("name", "Michelle");        System.setProperty("name2", "Nicole");        String retval;        retval=Util.getProperty(new String[]{"name", "name2"}, props, "name", false, "Jeannette");        assertEquals("Michelle", retval);        props.setProperty("name", "Bela"); props.setProperty("key", "val");        retval=Util.getProperty(new String[]{"name2", "name"}, props, "name", false, "Jeannette");        assertEquals("Nicole", retval);        props.setProperty("name", "Bela"); props.setProperty("key", "val");        retval=Util.getProperty(new String[]{"name3", "name"}, props, "name", false, "Jeannette");        assertEquals("Michelle", retval);        props.setProperty("name", "Bela"); props.setProperty("key", "val");        retval=Util.getProperty(new String[]{"name3", "name4"}, props, "name", false, "Jeannette");        assertEquals("Bela", retval);        props.setProperty("name", "Bela"); props.setProperty("key", "val");        retval=Util.getProperty(new String[]{"name2", "name"}, props, "name", true, "Jeannette");        assertEquals("Bela", retval);        props.setProperty("name", "Bela"); props.setProperty("key", "val");        retval=Util.getProperty(new String[]{"name2", "name"}, props, "name2", true, "Jeannette");        assertEquals("Jeannette", retval);        props.setProperty("name", "Bela"); props.setProperty("key", "val");        retval=Util.getProperty(new String[]{"name2", "name"}, props, "name2", true, null);        assertNull(retval);        props.setProperty("name", "Bela"); props.setProperty("key", "val");    }    public void testIgnoreBindAddress() {        boolean retval;        retval=Util.isBindAddressPropertyIgnored();        assertFalse(retval);        System.setProperty(Global.IGNORE_BIND_ADDRESS_PROPERTY, "true");        retval=Util.isBindAddressPropertyIgnored();        assertTrue(retval);        System.setProperty(Global.IGNORE_BIND_ADDRESS_PROPERTY, "true2");        retval=Util.isBindAddressPropertyIgnored();        assertFalse(retval);        System.setProperty(Global.IGNORE_BIND_ADDRESS_PROPERTY, "false");        retval=Util.isBindAddressPropertyIgnored();        assertFalse(retval);        System.getProperties().remove(Global.IGNORE_BIND_ADDRESS_PROPERTY);        System.setProperty(Global.IGNORE_BIND_ADDRESS_PROPERTY_OLD, "false");        retval=Util.isBindAddressPropertyIgnored();        assertFalse(retval);        System.getProperties().remove(Global.IGNORE_BIND_ADDRESS_PROPERTY);        System.setProperty(Global.IGNORE_BIND_ADDRESS_PROPERTY_OLD, "true");        retval=Util.isBindAddressPropertyIgnored();        assertTrue(retval);        System.setProperty(Global.IGNORE_BIND_ADDRESS_PROPERTY, "true");        System.setProperty(Global.IGNORE_BIND_ADDRESS_PROPERTY_OLD, "true");        retval=Util.isBindAddressPropertyIgnored();        assertTrue(retval);    }    public void testPrintBytes() {        long num;        String s;        num=1;        s=Util.printBytes(num);        System.out.println(num + " is " + s);        assertEquals("1b", s);        num=999;        s=Util.printBytes(num);        System.out.println(num + " is " + s);        assertEquals("999b", s);        num=1000;        s=Util.printBytes(num);        System.out.println(num + " is " + s);        assertEquals("1KB", s);        num=1001;        s=Util.printBytes(num);        System.out.println(num + " is " + s);        assertEquals("1KB", s);        num=1010;        s=Util.printBytes(num);        System.out.println(num + " is " + s);        assertEquals("1.01KB", s);        num=1543;        s=Util.printBytes(num);        System.out.println(num + " is " + s);        assertEquals("1.54KB", s);        num=10000;        s=Util.printBytes(num);        System.out.println(num + " is " + s);        assertEquals("10KB", s);        num=150000;        s=Util.printBytes(num);        System.out.println(num + " is " + s);        assertEquals("150KB", s);        num=150023;        s=Util.printBytes(num);        System.out.println(num + " is " + s);        assertEquals("150.02KB", s);        num=1200000;        s=Util.printBytes(num);        System.out.println(num + " is " + s);        assertEquals("1.2MB", s);        num=150000000;        s=Util.printBytes(num);        System.out.println(num + " is " + s);        assertEquals("150MB", s);        num=150030000;        s=Util.printBytes(num);        System.out.println(num + " is " + s);        assertEquals("150.03MB", s);        num=1200000000;        s=Util.printBytes(num);        System.out.println(num + " is " + s);        assertEquals("1.2GB", s);    }    public void testObjectToFromByteBuffer() throws Exception {        byte[] buf;        IpAddress addr=new IpAddress("localhost", 5000), addr2;        List list=new ArrayList(), list2;        list.add("Bela");        list.add("Jeannette");        buf=Util.objectToByteBuffer(addr);        addr2=(IpAddress)Util.objectFromByteBuffer(buf);        System.out.println("addr=" + addr + ", addr2=" + addr2);        assertEquals(addr, addr2);        buf=Util.objectToByteBuffer(list);        list2=(List)Util.objectFromByteBuffer(buf);        System.out.println("list=" + list + ", list2=" + list2);        assertEquals(list, list2);        Object obj=null;        buf=Util.objectToByteBuffer(obj);        assertNotNull(buf);        assertTrue(buf.length > 0);        obj=Util.objectFromByteBuffer(buf);        assertNull(obj);        Object[] values=new Object[]{                Boolean.TRUE,                Boolean.FALSE,                new Byte((byte)22),                new Byte("2"),                new Character('5'),                new Double(3.14),                new Float(352.3),                new Integer(100),                new Long(322649),                new Short((short)22),                "Bela Ban"        };        for(int i=0; i < values.length; i++) {            Object value=values[i];            marshal(value);        }    }    void marshal(Object obj) throws Exception {        byte[] buf=Util.objectToByteBuffer(obj);        assertNotNull(buf);        assertTrue(buf.length > 0);        Object obj2=Util.objectFromByteBuffer(buf);        System.out.println("obj=" + obj + ", obj2=" + obj2 + " (type=" + obj.getClass().getName() + ", length=" + buf.length + " bytes)");        assertEquals(obj, obj2);    }    public void testWriteStreamable() throws IOException, IllegalAccessException, InstantiationException {        Message m=new Message(null, null, "Hello");        ViewId vid=new ViewId(null, 12345);        ViewId vid2=new ViewId(new IpAddress("127.0.0.1", 5555), 35623);        ByteArrayOutputStream outstream=new ByteArrayOutputStream();        DataOutputStream dos=new DataOutputStream(outstream);        Util.writeGenericStreamable(m, dos);        Util.writeGenericStreamable(vid, dos);        Util.writeGenericStreamable(vid2, dos);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?