[MSHARED-952] make PrettyPrintXmlWriter platform independent (#62)

* make test platform independent
* remove broken links
* fix skipped test
* make PrettyPrintXmlWriter platform independent
diff --git a/src/main/java/org/apache/maven/shared/utils/xml/PrettyPrintXMLWriter.java b/src/main/java/org/apache/maven/shared/utils/xml/PrettyPrintXMLWriter.java
index 851cffb..b0d1a7d 100644
--- a/src/main/java/org/apache/maven/shared/utils/xml/PrettyPrintXMLWriter.java
+++ b/src/main/java/org/apache/maven/shared/utils/xml/PrettyPrintXMLWriter.java
@@ -23,7 +23,6 @@
 import java.io.PrintWriter;
 import java.io.Writer;
 import java.util.ArrayList;
-import org.apache.maven.shared.utils.Os;
 
 /**
  * XMLWriter with nice indentation.
@@ -101,7 +100,7 @@
      */
     public PrettyPrintXMLWriter( PrintWriter writer, String lineIndent, String encoding, String doctype )
     {
-        this( writer, lineIndent.toCharArray(), Os.LINE_SEP.toCharArray(), encoding, doctype );
+        this( writer, lineIndent.toCharArray(), "\n".toCharArray(), encoding, doctype );
     }
 
     /**
@@ -122,7 +121,7 @@
      */
     public PrettyPrintXMLWriter( PrintWriter writer, String encoding, String doctype )
     {
-        this( writer, DEFAULT_LINE_INDENT, Os.LINE_SEP.toCharArray(), encoding, doctype );
+        this( writer, DEFAULT_LINE_INDENT, "\n".toCharArray(), encoding, doctype );
     }
 
     /**
diff --git a/src/main/java/org/apache/maven/shared/utils/xml/Xpp3DomBuilder.java b/src/main/java/org/apache/maven/shared/utils/xml/Xpp3DomBuilder.java
index 9493a98..2b8f4ab 100644
--- a/src/main/java/org/apache/maven/shared/utils/xml/Xpp3DomBuilder.java
+++ b/src/main/java/org/apache/maven/shared/utils/xml/Xpp3DomBuilder.java
@@ -208,8 +208,6 @@
             attachToParent( child );
             pushOnStack( child );
 
-            // Todo: Detecting tags that close immediately seem to be impossible in sax ?
-            // http://stackoverflow.com/questions/12968390/detecting-self-closing-tags-in-sax
             values.add( new StringBuilder() );
 
             int size = attributes.getLength();
diff --git a/src/test/java/org/apache/maven/shared/utils/xml/PrettyPrintXmlWriterTest.java b/src/test/java/org/apache/maven/shared/utils/xml/PrettyPrintXmlWriterTest.java
index 70f078c..4830f43 100644
--- a/src/test/java/org/apache/maven/shared/utils/xml/PrettyPrintXmlWriterTest.java
+++ b/src/test/java/org/apache/maven/shared/utils/xml/PrettyPrintXmlWriterTest.java
@@ -24,7 +24,6 @@
 import javax.swing.text.html.HTML;
 import java.io.StringWriter;
 
-import org.apache.maven.shared.utils.Os;
 import org.apache.maven.shared.utils.StringUtils;
 import org.junit.Assert;
 import org.junit.Test;
@@ -51,7 +50,7 @@
 
         writer.endElement(); // Tag.HTML
 
-        Assert.assertEquals( expectedResult( Os.LINE_SEP ), w.toString() );
+        Assert.assertEquals( expectedResult(), w.toString() );
     }
 
     @Test
@@ -67,7 +66,7 @@
 
         writer.endElement(); // Tag.HTML
 
-        Assert.assertEquals( expectedResult( "\n" ), w.toString() );
+        Assert.assertEquals( expectedResult(), w.toString() );
     }
 
     @Test
@@ -83,7 +82,7 @@
 
         writer.endElement(); // Tag.HTML
 
-        Assert.assertEquals( expectedResult( "    ", Os.LINE_SEP ), w.toString() );
+        Assert.assertEquals( expectedResult( "    " ), w.toString() );
     }
 
     @Test
@@ -158,13 +157,15 @@
         writer.endElement(); // Tag.BODY
     }
 
-    private static String expectedResult( String lineSeparator )
+    private static String expectedResult()
     {
-        return expectedResult( "  ", lineSeparator );
+        return expectedResult( "  " );
     }
 
-    private static String expectedResult( String lineIndenter, String lineSeparator )
+    private static String expectedResult( String lineIndenter )
     {
+        
+        String lineSeparator = "\n";
         StringBuilder expected = new StringBuilder();
 
         expected.append( "<html>" ).append( lineSeparator );
diff --git a/src/test/java/org/apache/maven/shared/utils/xml/Xpp3DomBuilderTest.java b/src/test/java/org/apache/maven/shared/utils/xml/Xpp3DomBuilderTest.java
index a236ede..cef681e 100644
--- a/src/test/java/org/apache/maven/shared/utils/xml/Xpp3DomBuilderTest.java
+++ b/src/test/java/org/apache/maven/shared/utils/xml/Xpp3DomBuilderTest.java
@@ -19,9 +19,8 @@
  * under the License.
  */
 
-import org.apache.maven.shared.utils.StringUtils;
 import org.apache.maven.shared.utils.xml.pull.XmlPullParserException;
-
+import org.junit.Assert;
 import org.junit.Test;
 
 import java.io.ByteArrayInputStream;
@@ -43,16 +42,13 @@
 public class Xpp3DomBuilderTest
 {
 
-    private static final String LS = System.getProperty( "line.separator" );
-
-    private static final String xmlDeclaration = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
+    private static final String XML_DECLARATION = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
 
     @Test
     public void selfClosingTag()
         throws Exception
     {
 
-        // Todo:  http://stackoverflow.com/questions/12968390/detecting-self-closing-tags-in-sax
         String domString = selfClosingTagSource();
 
         Xpp3Dom dom = Xpp3DomBuilder.build( new StringReader( domString ) );
@@ -97,11 +93,15 @@
         assertEquals( "  preserve space  ", dom.getChild( "element6" ).getValue() );
     }
 
-    @Test(expected = XmlPullParserException.class)
-    public void malformedXml()
+    @Test
+    public void testMalformedXml()
     {
-        Xpp3DomBuilder.build( new StringReader( "<newRoot>" + createDomString() ) );
-        fail( "We're supposed to fail" );
+        try {
+            Xpp3DomBuilder.build( new StringReader( "<newRoot>" + createDomString() ) );
+            fail( "We're supposed to fail" );
+        } catch (XmlPullParserException ex) {
+            Assert.assertNotNull( ex.getMessage() );
+        }
     }
 
     @Test
@@ -137,9 +137,9 @@
     {
         StringBuilder domString = new StringBuilder();
         domString.append( "<root>" );
-        domString.append( LS );
+        domString.append( "\n" );
         domString.append( "  <el att=\"&lt;foo&gt;\">bar</el>" );
-        domString.append( LS );
+        domString.append( "\n" );
         domString.append( "</root>" );
 
         return domString.toString();
@@ -161,13 +161,13 @@
     {
         StringBuilder domString = new StringBuilder();
         domString.append( "<root>" );
-        domString.append( LS );
+        domString.append( "\n" );
         domString.append( "  <a1>\"msg\"</a1>" );
-        domString.append( LS );
+        domString.append( "\n" );
         domString.append( "  <a2>&lt;b&gt;\"msg\"&lt;/b&gt;</a2>" );
-        domString.append( LS );
+        domString.append( "\n" );
         domString.append( "  <a3>&lt;b&gt;\"msg\"&lt;/b&gt;</a3>" );
-        domString.append( LS );
+        domString.append( "\n" );
         domString.append( "</root>" );
         return domString.toString();
     }
@@ -195,12 +195,12 @@
         buf.append( "  <el4></el4>\n" );
         buf.append( "  <el5></el5>\n" );
         buf.append( "</root>" );
-        return StringUtils.unifyLineSeparators( buf.toString() );
+        return buf.toString();
     }
 
     private static String expectedSelfClosingTag()
     {
-        return StringUtils.unifyLineSeparators( xmlDeclaration + selfClosingTagSource() );
+        return XML_DECLARATION + selfClosingTagSource();
     }
 
 }