### Question:
EldaURL { public boolean hasParameter( String paramName, String paramValue ) { URLParameterValue v = getParameter( paramName ); boolean contains = false; if (v != null) { if (paramValue.contains( "," )) { contains = true; for (String pValue : StringUtils.split( paramValue, "," )) { contains = contains && v.contains( pValue ); } } else { contains = v.contains( paramValue ); } } return contains; } EldaURL( String url );  EldaURL( URI url ); EldaURL withParameter( String op, String paramName, String paramValue ); EldaURL withParameter( OPERATION op, String paramName, String paramValue ); boolean hasParameter( String paramName, String paramValue ); URLParameterValue getParameter( String paramName ); List<NamedParameterValue> getParameters( boolean external ); @Override String toString(); URI getUri(); EldaURL parentURL();  }### Answer:
@Test public void testHasParameter1() { EldaURL eu = new EldaURL( "http: assertTrue( eu.hasParameter( "a", "c" )); assertFalse( eu.hasParameter( "a", "cc" )); assertFalse( eu.hasParameter( "aa", "c" )); }
@Test public void testHasParameter2() { EldaURL eu = new EldaURL( "http: assertFalse( eu.hasParameter( "a", "c" )); }
@Test public void testHasParameter3() { EldaURL eu = new EldaURL( "http: assertTrue( eu.hasParameter( "a", "b" )); assertTrue( eu.hasParameter( "a", "c" )); assertFalse( eu.hasParameter( "a", "d" )); }
@Test public void testHasParameter4() { EldaURL eu = new EldaURL( "http: assertTrue( eu.hasParameter( "a", "b,c" )); assertTrue( eu.hasParameter( "a", "c,b" )); assertFalse( eu.hasParameter( "a", "b,d" )); }