Author: kwright
Date: Mon Feb 11 11:32:04 2013
New Revision: 1444744

URL: http://svn.apache.org/r1444744
Log:
Add ability to test encoding detection.

Modified:
    
manifoldcf/trunk/tests/rss/src/test/java/org/apache/manifoldcf/rss_tests/MockRSSService.java

Modified: 
manifoldcf/trunk/tests/rss/src/test/java/org/apache/manifoldcf/rss_tests/MockRSSService.java
URL: 
http://svn.apache.org/viewvc/manifoldcf/trunk/tests/rss/src/test/java/org/apache/manifoldcf/rss_tests/MockRSSService.java?rev=1444744&r1=1444743&r2=1444744&view=diff
==============================================================================
--- 
manifoldcf/trunk/tests/rss/src/test/java/org/apache/manifoldcf/rss_tests/MockRSSService.java
 (original)
+++ 
manifoldcf/trunk/tests/rss/src/test/java/org/apache/manifoldcf/rss_tests/MockRSSService.java
 Mon Feb 11 11:32:04 2013
@@ -93,9 +93,27 @@ public class MockRSSService
       {
         // Generate feed response
         res.setStatus(HttpServletResponse.SC_OK);
-        res.setContentType("text/xml; charset=utf-8");
+        // Randomly choose a different encoding, to make life interesting for 
the parser
+        if ((theFeed % 3) == 0)
+        {
+          res.setContentType("text/xml; charset=utf-8");
+          res.getWriter().printf("<?xml version=\"1.0\" 
encoding=\"UTF-8\"?>\n");
+        }
+        else if ((theFeed % 3) ==1)
+        {
+          res.setContentType("text/xml");
+          res.setCharacterEncoding("UTF-16BE");
+          // Write BOM + preamble
+          res.getWriter().printf("\uFEFF<?xml version=\"1.0\" 
encoding=\"UTF-16BE\"?>\n");
+        }
+        else
+        {
+          res.setContentType("text/xml");
+          res.setCharacterEncoding("UTF-16LE");
+          // Write BOM + preamble
+          res.getWriter().printf("\uFEFF<?xml version=\"1.0\" 
encoding=\"UTF-16LE\"?>\n");
+        }
         // Write out an rss 2.0 response, with docsperfeed docs
-        res.getWriter().printf("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
         res.getWriter().printf("<rss>\n");
         res.getWriter().printf("  <channel>\n");
         for (int i = 0 ; i < docsPerFeed ; i++)


Reply via email to