Esempio n. 1
0
    def test_write_filename_special_percent(self):
        # '%20' is a URL escaped space character.
        before_test = os.listdir(tempfile.gettempdir())

        def difference(filenames):
            return sorted(fn for fn in set(filenames).difference(before_test)
                          if fn.startswith('lxmltmp-'))

        with tmpfile(prefix="lxmltmp-p%20p", suffix=".xml") as filename:
            try:
                before_write = os.listdir(tempfile.gettempdir())
                self.tree.write(filename)
                after_write = os.listdir(tempfile.gettempdir())
                self.assertEqual(
                    read_file(filename, 'rb').replace(b'\n', b''),
                    self.root_str)
            except (AssertionError, IOError, OSError):
                print("Before write: %s, after write: %s" %
                      (difference(before_write), difference(after_write)))
                raise
Esempio n. 2
0
 def test_write_filename(self):
     # (c)ElementTree  supports filename strings as write argument
     with tmpfile(prefix="p", suffix=".xml") as filename:
         self.tree.write(filename)
         self.assertEqual(
             read_file(filename, 'rb').replace(b'\n', b''), self.root_str)
Esempio n. 3
0
 def test_write_filename_special_plus(self):
     # '+' is used as an escaped space character in URLs.
     with tmpfile(prefix="p+", suffix=".xml") as filename:
         self.tree.write(filename)
         self.assertEqual(
             read_file(filename, 'rb').replace(b'\n', b''), self.root_str)