diff --git a/commons-serialize-xml/src/test/java/io/gitlab/jfronny/commons/serialize/xml/test/NativeXmlWriterTest.java b/commons-serialize-xml/src/test/java/io/gitlab/jfronny/commons/serialize/xml/test/NativeXmlWriterTest.java
index de8f971..6982425 100644
--- a/commons-serialize-xml/src/test/java/io/gitlab/jfronny/commons/serialize/xml/test/NativeXmlWriterTest.java
+++ b/commons-serialize-xml/src/test/java/io/gitlab/jfronny/commons/serialize/xml/test/NativeXmlWriterTest.java
@@ -365,4 +365,62 @@ public final class NativeXmlWriterTest {
writer.close();
writer.close();
}
+
+ @Test
+ public void testSetGetFormattingStyle() throws IOException {
+ String lineSeparator = "\r\n";
+
+ StringWriter stringWriter = new StringWriter();
+ NativeXmlWriter jsonWriter = new NativeXmlWriter(stringWriter);
+ // Default should be FormattingStyle.COMPACT
+ jsonWriter.setIndent(" \t ").setNewline(lineSeparator);
+
+ jsonWriter.beginTag("tag");
+ jsonWriter.text("true");
+ jsonWriter.text("text");
+ jsonWriter.text("5.0");
+ jsonWriter.text(null);
+ jsonWriter.endTag();
+
+ String expected = """
+ \r
+ \t true\r
+ \t \r
+ \t text\r
+ \t \r
+ \t 5.0\r
+ \t \r
+ \t null\r
+ """;
+ assertThat(stringWriter.toString()).isEqualTo(expected);
+
+ assertThat(jsonWriter.getNewline()).isEqualTo(lineSeparator);
+ }
+
+ @Test
+ public void testIndentOverwritesFormattingStyle() throws IOException {
+ StringWriter stringWriter = new StringWriter();
+ NativeXmlWriter jsonWriter = new NativeXmlWriter(stringWriter);
+ // Should overwrite formatting style
+ jsonWriter.setIndent(" ");
+
+ jsonWriter.beginTag("tag");
+ jsonWriter.attributeName("a");
+ jsonWriter.attributeValue("b");
+ jsonWriter.beginTag("tag");
+ jsonWriter.text("1");
+ jsonWriter.text("2");
+ jsonWriter.endTag();
+ jsonWriter.endTag();
+
+ String expected = """
+
+
+ 1
+
+ 2
+
+ """;
+ assertThat(stringWriter.toString()).isEqualTo(expected);
+ }
}