Linux build warnings and encoding fixes

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@2702 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Andrew Hind
2006-04-25 12:40:02 +00:00
parent d467d1a208
commit 90cd929b83
3 changed files with 52 additions and 12 deletions

View File

@@ -53,7 +53,11 @@ public class SearcherComponentTest extends TestCase
{
private static ApplicationContext ctx = ApplicationContextHelper.getApplicationContext();
private static String COMPLEX_LOCAL_NAME = " `¬¦!\"£$%^&*()-_=+\t\n\\\u0000[]{};'#:@~,./<>?\\|\u0123\u4567\u8900\uabcd\uefff_xT65A_";
// private static String COMPLEX_LOCAL_NAME = " `¬¦!\"£$%^&*()-_=+\t\n\\\u0000[]{};'#:@~,./<>?\\|\u0123\u4567\u8900\uabcd\uefff_xT65A_";
private static String COMPLEX_LOCAL_NAME ="\u0020\u0060\u00ac\u00a6\u0021\\u0022\u00a3\u0024\u0025\u005e\u0026\u002a\u0028\u0029\u002d\u005f\u003d\u002b\\u0009\\u000a\\u005c\u0000\u005b\u005d\u007b\u007d\u003b\u0027\u0023\u003a\u0040\u007e\u002c\u002e\u002f\u003c\u003e\u003f\\u005c\u007c\u0123\u4567\u8900\uabcd\uefff\u005f\u0078\u0054\u0036\u0035\u0041\u005f";
private ServiceRegistry serviceRegistry;
private TransactionService transactionService;
@@ -322,7 +326,7 @@ public class SearcherComponentTest extends TestCase
"//*[like(@test:"+ISO9075.encode(COMPLEX_LOCAL_NAME)+", 'm__k%', false)]",
null,
namespacePrefixResolver, false);
// assertEquals(1, answer.size());
assertEquals(1, answer.size());
answer = searcher.selectNodes(
rootNodeRef,
@@ -336,7 +340,7 @@ public class SearcherComponentTest extends TestCase
"//*[like(@test:"+ISO9075.encode(COMPLEX_LOCAL_NAME)+", 'M__K%', false)]",
null,
namespacePrefixResolver, false);
// assertEquals(1, answer.size());
assertEquals(1, answer.size());
answer = searcher.selectNodes(
rootNodeRef,
@@ -1134,4 +1138,41 @@ public class SearcherComponentTest extends TestCase
assertEquals(1, answer.size());
}
public static void main(String[] args)
{
String escape = "\\\t\n\"";
StringBuilder builder = new StringBuilder();
builder.append("\"");
for(int i = 0; i < COMPLEX_LOCAL_NAME.length(); i++)
{
if(escape.indexOf(COMPLEX_LOCAL_NAME.charAt(i)) != -1)
{
builder.append("\\");
}
String part = Integer.toHexString(COMPLEX_LOCAL_NAME.charAt(i));
builder.append("\\u");
if(part.length() == 0)
{
builder.append("000");
}
if(part.length() == 1)
{
builder.append("000");
}
if(part.length() == 2)
{
builder.append("00");
}
if(part.length() == 3)
{
builder.append("0");
}
builder.append(part);
System.out.println(part);
}
builder.append("\"");
System.out.println(builder.toString());
}
}

View File

@@ -45,7 +45,7 @@ public class ISO9075Test extends TestCase
.encode("Andy's Bits & Bobs \uabcd\\"));
assertEquals(
"_x0020__x0060__x00ac__x00a6__x0021__x0022__x00a3__x0024__x0025__x005e__x0026__x002a__x0028__x0029_-__x003d__x002b__x0009__x000a__x005c__x0000__x005b__x005d__x007b__x007d__x003b__x0027__x0023__x003a__x0040__x007e__x002c_._x002f__x003c__x003e__x003f__x005c__x007c_",
ISO9075.encode(" `<EFBFBD><EFBFBD>!\"<EFBFBD>$%^&*()-_=+\t\n\\\u0000[]{};'#:@~,./<>?\\|"));
ISO9075.encode(" `\u00ac\u00a6!\"\u00a3$%^&*()-_=+\t\n\\\u0000[]{};'#:@~,./<>?\\|"));
assertEquals("\u0123_x4567_\u8900_xabcd__xefff__xT65A_", ISO9075.encode("\u0123\u4567\u8900\uabcd\uefff_xT65A_"));
assertEquals("_x003a_", ISO9075.encode(":"));
}
@@ -64,11 +64,10 @@ public class ISO9075Test extends TestCase
assertEquals("Andy's Bits & Bobs \uabcd\\", ISO9075
.decode("Andy_x0027_s_x0020_Bits_x0020__x0026__x0020_Bobs_x0020__xabcd__x005c_"));
assertEquals(
" `<EFBFBD><EFBFBD>!\"<EFBFBD>$%^&*()-_=+\t\n\\\u0000[]{};'#:@~,./<>?\\|",
" `\u00ac\u00a6!\"\u00a3$%^&*()-_=+\t\n\\\u0000[]{};'#:@~,./<>?\\|",
ISO9075
.decode("_x0020__x0060__x00ac__x00a6__x0021__x0022__x00a3__x0024__x0025__x005e__x0026__x002a__x0028__x0029_-__x003d__x002b__x0009__x000a__x005c__x0000__x005b__x005d__x007b__x007d__x003b__x0027__x0023__x003a__x0040__x007e__x002c_._x002f__x003c__x003e__x003f__x005c__x007c_"));
assertEquals("\u0123\u4567\u8900\uabcd\uefff_xT65A_", ISO9075.decode("\u0123_x4567_\u8900_xabcd__xefff__xT65A_"));
System.out.println(" `<60><>!\"<EFBFBD>$%^&*()-_=+\t\n\\\u0000[]{};'#:@~,./<>?\\|\u0123\u4567\u8900\uabcd\uefff_xT65A_");
}
}

View File

@@ -29,7 +29,7 @@ public class SearchLanguageConversionTest extends TestCase
* A string with a whole lod of badness to stress test with
*/
private static final String BAD_STRING =
"\\ | ! \" <EFBFBD> " +
"\\ | ! \" £ " +
"$ % ^ & * ( " +
") _ { } [ ] " +
"@ # ~ ' : ; " +
@@ -40,7 +40,7 @@ public class SearchLanguageConversionTest extends TestCase
{
String good = SearchLanguageConversion.escapeForXPathLike(BAD_STRING);
assertEquals("Escaping for xpath failed",
"\\\\ | ! \" <EFBFBD> " +
"\\\\ | ! \" £ " +
"$ \\% ^ & * ( " +
") \\_ { } [ ] " +
"@ # ~ ' : ; " +
@@ -53,7 +53,7 @@ public class SearchLanguageConversionTest extends TestCase
{
String good = SearchLanguageConversion.escapeForRegex(BAD_STRING);
assertEquals("Escaping for regex failed",
"\\\\ \\| ! \" <EFBFBD> " +
"\\\\ \\| ! \" £ " +
"\\$ % \\^ & \\* \\( " +
"\\) _ \\{ \\} [ ] " +
"@ # ~ ' : ; " +
@@ -66,7 +66,7 @@ public class SearchLanguageConversionTest extends TestCase
{
String good = SearchLanguageConversion.escapeForLucene(BAD_STRING);
assertEquals("Escaping for regex failed",
"\\\\ | \\! \\\" <EFBFBD> " +
"\\\\ | \\! \\\" £ " +
"$ % \\^ & \\* \\( " +
"\\) _ \\{ \\} \\[ \\] " +
"@ # \\~ ' \\: ; " +
@@ -79,7 +79,7 @@ public class SearchLanguageConversionTest extends TestCase
{
String good = SearchLanguageConversion.convertXPathLikeToRegex(BAD_STRING);
assertEquals("XPath like to regex failed",
"(?s)\\ \\| ! \" <EFBFBD> " +
"(?s)\\ \\| ! \" £ " +
"\\$ .* \\^ & \\* \\( " +
"\\) . \\{ \\} [ ] " +
"@ # ~ ' : ; " +
@@ -92,7 +92,7 @@ public class SearchLanguageConversionTest extends TestCase
{
String good = SearchLanguageConversion.convertXPathLikeToLucene(BAD_STRING);
assertEquals("XPath like to regex failed",
"\\ | \\! \\\" <EFBFBD> " +
"\\ | \\! \\\" £ " +
"$ * \\^ & \\* \\( " +
"\\) ? \\{ \\} \\[ \\] " +
"@ # \\~ ' \\: ; " +