awips2/edexOsgi/com.raytheon.uf.common.message/tests/com/raytheon/uf/common/message/TestWsId.java
Steve Harris 97c4db937e 12.5.1-15 baseline
Former-commit-id: 8552902906 [formerly b13cbb7e00] [formerly 3904c4ccf5 [formerly 4909e0dd166e43c22a34d96aa744f51db8a7d6c0]]
Former-commit-id: 3904c4ccf5
Former-commit-id: 676ea3192f
2012-06-08 13:39:48 -05:00

170 lines
5.7 KiB
Java

/**
* This software was developed and / or modified by Raytheon Company,
* pursuant to Contract DG133W-05-CQ-1067 with the US Government.
*
* U.S. EXPORT CONTROLLED TECHNICAL DATA
* This software product contains export-restricted data whose
* export/transfer/disclosure is restricted by U.S. law. Dissemination
* to non-U.S. persons whether in the United States or abroad requires
* an export license or other authorization.
*
* Contractor Name: Raytheon Company
* Contractor Address: 6825 Pine Street, Suite 340
* Mail Stop B8
* Omaha, NE 68106
* 402.291.0100
*
* See the AWIPS II Master Rights File ("Master Rights File.pdf") for
* further licensing information.
**/
package com.raytheon.uf.common.message;
import java.lang.management.ManagementFactory;
import java.net.InetAddress;
import java.net.UnknownHostException;
import org.junit.Assert;
import org.junit.Test;
public class TestWsId {
private int pid = Integer.parseInt(ManagementFactory.getRuntimeMXBean()
.getName().split("@")[0]);
private long threadId = Thread.currentThread().getId();
@Test
public void testWsIdString() {
InetAddress addr = null;
try {
addr = InetAddress.getLocalHost();
} catch (UnknownHostException e) {
e.printStackTrace();
}
String user = System.getProperty("user.name");
String program = "TestWsId";
WsId wsId1 = new WsId(addr, user, program);
WsId wsId2 = new WsId(wsId1.toString());
Assert.assertEquals(wsId1, wsId2);
}
@Test
public void testWsIdInetAddressStringStringInt() {
InetAddress addr = null;
try {
addr = InetAddress.getLocalHost();
} catch (UnknownHostException e) {
e.printStackTrace();
}
String user = System.getProperty("user.name");
String program = "TestWsId";
WsId wsId = new WsId(addr, user, program);
WsId wsId2 = new WsId(null, user, program);
System.out.println(wsId2.getNetworkId());
Assert.assertEquals(addr, wsId.getNetworkId());
Assert.assertEquals(user, wsId.getUserName());
Assert.assertEquals(program, wsId.getProgName());
Assert.assertEquals(pid, wsId.getPid());
Assert.assertEquals(threadId, wsId.getThreadId());
}
@Test
public void testWsIdInetAddressStringStringIntLong() {
InetAddress addr = null;
try {
addr = InetAddress.getLocalHost();
} catch (UnknownHostException e) {
e.printStackTrace();
}
String user = System.getProperty("user.name");
String program = "TestWsId";
WsId wsId = new WsId(addr, user, program);
Assert.assertEquals(addr, wsId.getNetworkId());
Assert.assertEquals(user, wsId.getUserName());
Assert.assertEquals(program, wsId.getProgName());
Assert.assertEquals(pid, wsId.getPid());
Assert.assertEquals(threadId, wsId.getThreadId());
}
@Test
public void testToString() {
InetAddress addr = null;
try {
addr = InetAddress.getByAddress(new byte[] { 123, 45, 67, 89 });
} catch (UnknownHostException e) {
e.printStackTrace();
}
String user = "user";
String program = "TestWsId";
WsId wsId1 = new WsId(addr, user, program);
String s = wsId1.toString();
String expected = "1497574779:user:TestWsId:" + this.pid + ":"
+ this.threadId;
Assert.assertEquals(expected, s);
}
@Test
public void testToPrettyString() {
InetAddress addr = null;
try {
addr = InetAddress.getByAddress(new byte[] { 123, 45, 67, 89 });
} catch (UnknownHostException e) {
e.printStackTrace();
}
String user = "user";
String program = "TestWsId";
WsId wsId1 = new WsId(addr, user, program);
String s = wsId1.toPrettyString();
String expected = "user@123.45.67.89:TestWsId:" + this.pid + ":"
+ this.threadId;
Assert.assertEquals(expected, s);
}
@Test
public void testEqualsObject() {
try {
final InetAddress addr1 = InetAddress.getLocalHost();
final InetAddress addr2 = InetAddress.getByAddress(new byte[] {
123, 45, 67, 89 });
final String user = System.getProperty("user.name");
final String program = "TestWsId";
WsId wsId1 = new WsId(addr1, user, program);
WsId wsId2 = new WsId(addr1, user, program);
WsId wsId3 = new WsId(addr2, user, program);
WsId wsId4 = new WsId(addr1, "bogus", program);
WsId wsId5 = new WsId(addr1, user, "bogus");
WsId wsId6 = new WsId(addr1, "bogus", program);
Assert.assertTrue(wsId1.equals(wsId1));
Assert.assertTrue(wsId1.equals(wsId2));
Assert.assertTrue(wsId2.equals(wsId1));
Assert.assertFalse(wsId1.equals(wsId3));
Assert.assertFalse(wsId1.equals(wsId4));
Assert.assertFalse(wsId1.equals(wsId5));
Assert.assertFalse(wsId1.equals(wsId6));
final WsId[] wsId7 = new WsId[1];
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
wsId7[0] = new WsId(addr1, user, program);
}
});
thread.start();
thread.join();
Assert.assertFalse(wsId1.equals(wsId7[0]));
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}