package org.limewire.lws.server; import java.util.HashMap; import java.util.Map; import java.util.regex.Pattern; import org.limewire.lws.server.LWSServerUtil; import org.limewire.util.BaseTestCase; import junit.framework.Test; import junit.textui.TestRunner; public class LWSServerUtilTest extends BaseTestCase { public LWSServerUtilTest(String s) { super(s); } public static Test suite() { return buildTestSuite(LWSServerUtilTest.class); } public static void main(String[] args) { TestRunner.run(suite()); } public void testNull() { String cmd = null; Map<String, String> args = new HashMap<String, String>(); String have = LWSServerUtil.addURLEncodedArguments(cmd, args); assertNull(have); } public void testSimple() { String cmd = "cmd"; String wantString = "cmd"; Map<String, String> wantArgs = new HashMap<String, String>(); Map<String, String> haveArgs = new HashMap<String, String>(); String haveString = LWSServerUtil.addURLEncodedArguments(cmd, haveArgs); assertEquals(wantString, haveString); assertEquals(wantArgs, haveArgs); } public void testSimple2() { String cmd = "cmd?"; String wantString = "cmd"; Map<String, String> wantArgs = new HashMap<String, String>(); Map<String, String> haveArgs = new HashMap<String, String>(); String haveString = LWSServerUtil.addURLEncodedArguments(cmd, haveArgs); assertEquals(wantString, haveString); assertEquals(wantArgs, haveArgs); } public void testSimpleOneArg() { String cmd = "cmd?one=1"; String wantString = "cmd"; Map<String, String> wantArgs = new HashMap<String, String>(); wantArgs.put("one", "1"); Map<String, String> haveArgs = new HashMap<String, String>(); String haveString = LWSServerUtil.addURLEncodedArguments(cmd, haveArgs); assertEquals(wantString, haveString); assertEquals(wantArgs, haveArgs); } public void testSimpleOneArgNull() { String cmd = "cmd?one"; String wantString = "cmd"; Map<String, String> wantArgs = new HashMap<String, String>(); wantArgs.put("one", null); Map<String, String> haveArgs = new HashMap<String, String>(); String haveString = LWSServerUtil.addURLEncodedArguments(cmd, haveArgs); assertEquals(wantString, haveString); assertEquals(wantArgs, haveArgs); } public void testSimpleOneArgEmpty() { String cmd = "cmd?one="; String wantString = "cmd"; Map<String, String> wantArgs = new HashMap<String, String>(); wantArgs.put("one", ""); Map<String, String> haveArgs = new HashMap<String, String>(); String haveString = LWSServerUtil.addURLEncodedArguments(cmd, haveArgs); assertEquals(wantString, haveString); assertEquals(wantArgs, haveArgs); } public void testSimpleTwoArgs() { String cmd = "cmd?one=1&two=2"; String wantString = "cmd"; Map<String, String> wantArgs = new HashMap<String, String>(); wantArgs.put("one", "1"); wantArgs.put("two", "2"); Map<String, String> haveArgs = new HashMap<String, String>(); String haveString = LWSServerUtil.addURLEncodedArguments(cmd, haveArgs); assertEquals(wantString, haveString); assertEquals(wantArgs, haveArgs); } public void testSimpleTwoArgsNull() { String cmd = "cmd?one&two"; String wantString = "cmd"; Map<String, String> wantArgs = new HashMap<String, String>(); wantArgs.put("one", null); wantArgs.put("two", null); Map<String, String> haveArgs = new HashMap<String, String>(); String haveString = LWSServerUtil.addURLEncodedArguments(cmd, haveArgs); assertEquals(wantString, haveString); assertEquals(wantArgs, haveArgs); } public void testCookiesTasteGood() { String str = LWSServerUtil.createCookieDate(); // // Wdy, DD-Mon-YYYY HH:MM:SS GMT // Thu, 10-05-2007 15:53:12 GMT // boolean b = Pattern.matches( "[A-Z][a-z][a-z], \\d\\d-\\d\\d-\\d\\d\\d\\d \\d\\d:\\d\\d:\\d\\d GMT", str); assertTrue(str, b); } }