[freenet-cvs] r14006 - trunk/freenet/test/freenet/support

2007-07-09 Thread [email protected]
Author: sback
Date: 2007-07-09 21:28:04 + (Mon, 09 Jul 2007)
New Revision: 14006

Modified:
   trunk/freenet/test/freenet/support/URLEncoderDecoderTest.java
Log:
Decode and Encode methods tested. Two tests case are commented, due to bugs 
1494 and 1506

Modified: trunk/freenet/test/freenet/support/URLEncoderDecoderTest.java
===
--- trunk/freenet/test/freenet/support/URLEncoderDecoderTest.java   
2007-07-09 20:30:17 UTC (rev 14005)
+++ trunk/freenet/test/freenet/support/URLEncoderDecoderTest.java   
2007-07-09 21:28:04 UTC (rev 14006)
@@ -27,6 +27,11 @@
  */
 public class URLEncoderDecoderTest extends TestCase {

+   private String prtblAscii = " !@#$%^&()+={}[]:;\"'<>,?~`";  
//printable ascii symbols
+   private String stressedUTF_8Chars = 
"???"+ 
+   
"???"+
+   
"?";//UTF-8 chars with 
stress 
+   
/**
 * Tests if URLEncode.encode(String) and
 * URLDecode.decode(String,boolean) methods
@@ -36,7 +41,7 @@
public void testEncodeDecodeString_notSafeBaseChars() {
String[] toEncode = {
URLEncoder.safeURLCharacters,   
//safe chars
-   "!@#$%^&()+={}[]:;\"'<>,?~`\n", //not 
safe "base" chars
+   prtblAscii,
"%%%",  //triple % char, if badly 
encoded it will generate an exception
""  //no chars
};
@@ -54,13 +59,11 @@
 * characters and not safe "advanced" (i.e. not ASCII) chars .
 */
public void testEncodeDecodeString_notSafeAdvChars() {
-   String[] toEncode = { 
"???"+ 
- 
"???"+
- 
"?"};
-   /*try {
-   assertTrue(areCorrectlyEncodedDecoded(toEncode));
-   } catch (URLEncodedFormatException anException) {
-   fail("Not expected exception thrown : " + 
anException.getMessage()); } */
+   //String[] toEncode = {stressedUTF_8Chars};
+   //try {
+   //  assertTrue(areCorrectlyEncodedDecoded(toEncode));
+   //} catch (URLEncodedFormatException anException) {
+   //  fail("Not expected exception thrown : " + 
anException.getMessage()); }
}

/**
@@ -68,7 +71,7 @@
 * being processed by encoding and 
 * decoding methods
 * @param toEncode String to Encode
-* @return true if the String is correctly processed
+* @return true means to be tolerant of bogus escapes
 * @throws URLEncodedFormatException
 */
private boolean areCorrectlyEncodedDecoded(String[] toEncode) throws 
URLEncodedFormatException {
@@ -82,7 +85,7 @@
}

/**
-* Tests URLEncode(String,String,boolean) method
+* Tests encode(String,String,boolean) method
 * to verify if the force parameter is
 * well-managed for each safeURLCharacter,
 * with both true and false ascii-flag.
@@ -102,4 +105,45 @@
fail("Not expected exception thrown : " + 
anException.getMessage()); }
}
}
-}
+   
+   
+   /**
+* Verifies if a URLEncodedFormatException is raised
+* when decoding the provided String
+* @param toDecode the String to decode
+* @param tolerant whether the decoding should be tolerant with 
+* @return
+*/
+   private boolean isDecodeRaisingEncodedException(String toDecode, 
boolean tolerant) {
+   boolean retValue = false;
+   try {
+   System.out.println(URLDecoder.decode(toDecode,false));
+   } catch (URLEncodedFormatException anException) {
+   retValue = true; }
+   return retValue;
+   }
+   
+   /**
+* Tests decode(String,boolean) method
+* using not valid encoded String to
+* verifies if it raises an exception
+*/
+   public void testDecodeWrongString() {
+   //String toDecode = stressedUTF_8Chars+prtblAscii;
+   
+   //for (int i = 0; i

[freenet-cvs] r14006 - trunk/freenet/test/freenet/support

2007-07-09 Thread sback
Author: sback
Date: 2007-07-09 21:28:04 + (Mon, 09 Jul 2007)
New Revision: 14006

Modified:
   trunk/freenet/test/freenet/support/URLEncoderDecoderTest.java
Log:
Decode and Encode methods tested. Two tests case are commented, due to bugs 
1494 and 1506

Modified: trunk/freenet/test/freenet/support/URLEncoderDecoderTest.java
===
--- trunk/freenet/test/freenet/support/URLEncoderDecoderTest.java   
2007-07-09 20:30:17 UTC (rev 14005)
+++ trunk/freenet/test/freenet/support/URLEncoderDecoderTest.java   
2007-07-09 21:28:04 UTC (rev 14006)
@@ -27,6 +27,11 @@
  */
 public class URLEncoderDecoderTest extends TestCase {
 
+   private String prtblAscii = " [EMAIL PROTECTED]&()+={}[]:;\"'<>,?~`";   
//printable ascii symbols
+   private String stressedUTF_8Chars = 
"ÉâûĔĭņşÊãüĕĮŇŠËäýĖįňšÌåþėİʼnŢÍæÿĘıŊţÎçĀęIJŋŤÏèāĚijŌťÐéĂěĴōŦÑêăĜĵŎŧ"+ 
+   
"ÒëĄĝĶŏŨÓìąĞķŐũÔíĆğĸőŪÕîćĠĹŒūÖïĈġĺœŬ×ðĉĢĻŔŭØñĊģļŕŮÙòċĤĽŖůÚóČĥľŗŰ"+
+   
"ÛôčĦĿŘűÜõĎħŀřŲÝöďĨŁŚųÞ÷ĐĩłśŴßøđĪŃŜŵàùĒīńŝŶáúēĬŅŞŷ";//UTF-8 chars with 
stress 
+   
/**
 * Tests if URLEncode.encode(String) and
 * URLDecode.decode(String,boolean) methods
@@ -36,7 +41,7 @@
public void testEncodeDecodeString_notSafeBaseChars() {
String[] toEncode = {
URLEncoder.safeURLCharacters,   
//safe chars
-   "[EMAIL PROTECTED]&()+={}[]:;\"'<>,?~`\n",  
//not safe "base" chars
+   prtblAscii,
"%%%",  //triple % char, if badly 
encoded it will generate an exception
""  //no chars
};
@@ -54,13 +59,11 @@
 * characters and not safe "advanced" (i.e. not ASCII) chars .
 */
public void testEncodeDecodeString_notSafeAdvChars() {
-   String[] toEncode = { 
"ÉâûĔĭņşÊãüĕĮŇŠËäýĖįňšÌåþėİʼnŢÍæÿĘıŊţÎçĀęIJŋŤÏèāĚijŌťÐéĂěĴōŦÑêăĜĵŎŧ"+ 
- 
"ÒëĄĝĶŏŨÓìąĞķŐũÔíĆğĸőŪÕîćĠĹŒūÖïĈġĺœŬ×ðĉĢĻŔŭØñĊģļŕŮÙòċĤĽŖůÚóČĥľŗŰ"+
- 
"ÛôčĦĿŘűÜõĎħŀřŲÝöďĨŁŚųÞ÷ĐĩłśŴßøđĪŃŜŵàùĒīńŝŶáúēĬŅŞŷ"};
-   /*try {
-   assertTrue(areCorrectlyEncodedDecoded(toEncode));
-   } catch (URLEncodedFormatException anException) {
-   fail("Not expected exception thrown : " + 
anException.getMessage()); } */
+   //String[] toEncode = {stressedUTF_8Chars};
+   //try {
+   //  assertTrue(areCorrectlyEncodedDecoded(toEncode));
+   //} catch (URLEncodedFormatException anException) {
+   //  fail("Not expected exception thrown : " + 
anException.getMessage()); }
}
 
/**
@@ -68,7 +71,7 @@
 * being processed by encoding and 
 * decoding methods
 * @param toEncode String to Encode
-* @return true if the String is correctly processed
+* @return true means to be tolerant of bogus escapes
 * @throws URLEncodedFormatException
 */
private boolean areCorrectlyEncodedDecoded(String[] toEncode) throws 
URLEncodedFormatException {
@@ -82,7 +85,7 @@
}

/**
-* Tests URLEncode(String,String,boolean) method
+* Tests encode(String,String,boolean) method
 * to verify if the force parameter is
 * well-managed for each safeURLCharacter,
 * with both true and false ascii-flag.
@@ -102,4 +105,45 @@
fail("Not expected exception thrown : " + 
anException.getMessage()); }
}
}
-}
+   
+   
+   /**
+* Verifies if a URLEncodedFormatException is raised
+* when decoding the provided String
+* @param toDecode the String to decode
+* @param tolerant whether the decoding should be tolerant with 
+* @return
+*/
+   private boolean isDecodeRaisingEncodedException(String toDecode, 
boolean tolerant) {
+   boolean retValue = false;
+   try {
+   System.out.println(URLDecoder.decode(toDecode,false));
+   } catch (URLEncodedFormatException anException) {
+   retValue = true; }
+   return retValue;
+   }
+   
+   /**
+* Tests decode(String,boolean) method
+* using not valid encoded String to
+* verifies if it raises an exception
+*/
+   public void testDecodeWrongString() {
+   //String toDecode = stressedUTF_8Chars+prtblAscii;
+   
+   //for (int i = 0; ihttp://emu.freenetproject.org/cgi-bin/mailman