where
import Data.Maybe
+import Test.HUnit
import Text.Regex (mkRegex, subRegex)
import Text.XML.HaXml
-- character represented by that entity.
xml_entities :: [(String, String)]
xml_entities = [("[lr]dquo", "\""),
+ ("quot", "\""),
("[mn]dash", "-"),
("nbsp", " "),
("#8217", "'"),
replacement = (replacements !! 0)
from = "&" ++ (fst replacement) ++ ";"
to = (snd replacement)
+
+
+
+xml_tests :: [Test]
+xml_tests = [ test_replace_entities ]
+
+
+test_replace_entities :: Test
+test_replace_entities =
+ TestCase $ assertEqual "All entities are replaced correctly." expected_text actual_text
+ where
+ actual_text = (replace_entities ""The moon is gay," said <insert the current president of the United States of America>. “It’s OK—–he’s not a real doctor.”")
+ expected_text = "\"The moon is gay,\" said <insert the current president of the United States of America>. \"It's OK--he's not a real doctor.\""