From 42df35bc3f26e329ce4825c8773f18b62b97f8b7 Mon Sep 17 00:00:00 2001 From: Michael Keppler Date: Tue, 29 Apr 2014 09:51:09 +0200 Subject: fix #3795: filter invalid character references during import --- .../files/InvalidXMLCharacterFilterReaderTest.java | 28 ++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 tests/src/cgeo/geocaching/files/InvalidXMLCharacterFilterReaderTest.java (limited to 'tests') diff --git a/tests/src/cgeo/geocaching/files/InvalidXMLCharacterFilterReaderTest.java b/tests/src/cgeo/geocaching/files/InvalidXMLCharacterFilterReaderTest.java new file mode 100644 index 0000000..0641b5d --- /dev/null +++ b/tests/src/cgeo/geocaching/files/InvalidXMLCharacterFilterReaderTest.java @@ -0,0 +1,28 @@ +package cgeo.geocaching.files; + +import static org.assertj.core.api.Assertions.assertThat; + +import android.sax.EndTextElementListener; +import android.sax.RootElement; +import android.test.AndroidTestCase; +import android.util.Xml; + +import java.io.StringReader; +import java.util.concurrent.atomic.AtomicReference; + +public class InvalidXMLCharacterFilterReaderTest extends AndroidTestCase { + + public static void testFilterInvalid() throws Exception { + final RootElement root = new RootElement("desc"); + final AtomicReference description = new AtomicReference(); + root.setEndTextElementListener(new EndTextElementListener() { + + public void end(String body) { + description.set(body); + } + }); + StringReader reader = new StringReader("Invalid description"); + Xml.parse(new InvalidXMLCharacterFilterReader(reader), root.getContentHandler()); + assertThat(description.get()).isEqualTo("Invaliddescription"); + } +} -- cgit v1.1