package com.feisystems.provider.web.util; import static org.junit.Assert.assertEquals; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; import com.feisystems.provider.web.util.URLArgument; import com.feisystems.provider.web.util.URLArgument.URLHelper; public class URLArgumentTest { private URLArgument[] cut; @BeforeClass public static void setUpBeforeClass() throws Exception { } @Before public void setUp() throws Exception { cut = new URLArgument[] { URLArgument.CITY, URLArgument.FIRST_NAME, URLArgument.GENDER, URLArgument.LAST_NAME, URLArgument.POSTAL_CODE, URLArgument.SPECIALTY, URLArgument.TELEPHONE, URLArgument.US_STATE }; } @Test public void testArgumentName() { assertEquals(URLArgument.URLHelper.CITY, cut[0].argumentName()); assertEquals(URLArgument.URLHelper.FIRST_NAME, cut[1].argumentName()); assertEquals(URLArgument.URLHelper.GENDER, cut[2].argumentName()); assertEquals(URLArgument.URLHelper.LAST_NAME, cut[3].argumentName()); assertEquals(URLArgument.URLHelper.POSTAL_CODE, cut[4].argumentName()); assertEquals(URLArgument.URLHelper.SPECIALTY, cut[5].argumentName()); assertEquals(URLArgument.URLHelper.TELEPHONE, cut[6].argumentName()); assertEquals(URLArgument.URLHelper.US_STATE, cut[7].argumentName()); } @Test public void testGetURLArgumentInstance() { assertEquals(URLHelper.CITY, URLArgument.getURLArgumentInstance(URLHelper.CITY) .argumentName()); assertEquals(URLHelper.FIRST_NAME, URLArgument.getURLArgumentInstance(URLHelper.FIRST_NAME) .argumentName()); assertEquals(URLHelper.GENDER, URLArgument.getURLArgumentInstance(URLHelper.GENDER) .argumentName()); assertEquals(URLHelper.LAST_NAME, URLArgument.getURLArgumentInstance(URLHelper.LAST_NAME) .argumentName()); assertEquals(URLHelper.POSTAL_CODE, URLArgument.getURLArgumentInstance(URLHelper.POSTAL_CODE) .argumentName()); assertEquals(URLHelper.SPECIALTY, URLArgument.getURLArgumentInstance(URLHelper.SPECIALTY) .argumentName()); assertEquals(URLHelper.TELEPHONE, URLArgument.getURLArgumentInstance(URLHelper.TELEPHONE) .argumentName()); assertEquals(URLHelper.US_STATE, URLArgument.getURLArgumentInstance(URLHelper.US_STATE) .argumentName()); } @Test public void testGetMethodType() { assertEquals( URLHelper.CITY_STATE_METHOD_TYPE, URLArgument .getMethodType("http://context/providers/gender/m/usstate/pa/lastname/smith")); } @Test public void testCreateArgumentArray() { String[] cityStateArray = URLArgument .createArgumentArray(URLHelper.CITY_STATE_METHOD_TYPE); assertEquals(14, cityStateArray.length); String[] zipArray = URLArgument .createArgumentArray(URLHelper.POSTAL_CODE_METHOD_TYPE); assertEquals(12, zipArray.length); } @Test public void testFillArgument() { String[] csArray = URLArgument .createArgumentArray(URLHelper.CITY_STATE_METHOD_TYPE); cut[0].fillArgument(csArray, URLHelper.CITY_STATE_METHOD_TYPE, "gotham");// 2 cut[1].fillArgument(csArray, URLHelper.CITY_STATE_METHOD_TYPE, "john");// 6; cut[2].fillArgument(csArray, URLHelper.CITY_STATE_METHOD_TYPE, "m");// 0 cut[3].fillArgument(csArray, URLHelper.CITY_STATE_METHOD_TYPE, "smith");// 5; cut[5].fillArgument(csArray, URLHelper.CITY_STATE_METHOD_TYPE, "general");// 3 cut[6].fillArgument(csArray, URLHelper.CITY_STATE_METHOD_TYPE, "4105555555");// 4 cut[7].fillArgument(csArray, URLHelper.CITY_STATE_METHOD_TYPE, "ny");// 1 assertEquals("m", csArray[0]); assertEquals("ny", csArray[1]); assertEquals("gotham", csArray[2]); assertEquals("general", csArray[3]); assertEquals("4105555555", csArray[4]); assertEquals("smith", csArray[5]); assertEquals("john", csArray[6]); String[] zipArray = URLArgument .createArgumentArray(URLHelper.POSTAL_CODE_METHOD_TYPE); cut[4].fillArgument(zipArray, URLHelper.POSTAL_CODE_METHOD_TYPE, "123450987");// 2 cut[1].fillArgument(zipArray, URLHelper.POSTAL_CODE_METHOD_TYPE, "john");// 6; cut[2].fillArgument(zipArray, URLHelper.POSTAL_CODE_METHOD_TYPE, "m");// 0 cut[3].fillArgument(zipArray, URLHelper.POSTAL_CODE_METHOD_TYPE, "smith");// 5; cut[5].fillArgument(zipArray, URLHelper.POSTAL_CODE_METHOD_TYPE, "general");// 3 cut[6].fillArgument(zipArray, URLHelper.POSTAL_CODE_METHOD_TYPE, "4105555555");// 4 assertEquals("123450987", zipArray[1]); assertEquals("general", zipArray[2]); assertEquals("4105555555", zipArray[3]); assertEquals("smith", zipArray[4]); assertEquals("john", zipArray[5]); assertEquals("m", zipArray[0]); } }