diff options
| author | wiemann <wiemann@929543f6-e4f2-0310-98a6-ba3bd3dd1d04> | 2005-08-17 13:59:12 +0000 |
|---|---|---|
| committer | wiemann <wiemann@929543f6-e4f2-0310-98a6-ba3bd3dd1d04> | 2005-08-17 13:59:12 +0000 |
| commit | a4bc0d09f3d1f633a5780976d1f913e083c9564a (patch) | |
| tree | 1777475e88463b08438f0719be97cc087554eadd /test/test_dependencies.py | |
| parent | 60c69f8cf97125135948a3d35b7698ee80921137 (diff) | |
| parent | 2818db9a234cc37008c5f2bb0e821f9b1fa92de2 (diff) | |
| download | docutils-0.3.9.tar.gz | |
re-added docutils-0.3.9 tag one level deeper (without web/ and sandboxes/)docutils-0.3.9
git-svn-id: http://svn.code.sf.net/p/docutils/code/tags/docutils-0.3.9@3815 929543f6-e4f2-0310-98a6-ba3bd3dd1d04
Diffstat (limited to 'test/test_dependencies.py')
| -rwxr-xr-x | test/test_dependencies.py | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/test/test_dependencies.py b/test/test_dependencies.py new file mode 100755 index 000000000..61d19a6f2 --- /dev/null +++ b/test/test_dependencies.py @@ -0,0 +1,78 @@ +#! /usr/bin/env python + +# Author: Felix Wiemann +# Contact: Felix_Wiemann@ososo.de +# Revision: $Revision$ +# Date: $Date$ +# Copyright: This module has been placed in the public domain. + +""" +Test module for the --record-dependencies option. +""" + +import os.path +import unittest +import sys +import docutils.core +import docutils.utils +import DocutilsTestSupport + + +class RecordDependenciesTests(unittest.TestCase): + + def setUp(self): + os.chdir(os.path.join(DocutilsTestSupport.testroot, 'data')) + + def get_record(self, inputfile=None, **settings): + + recordfile = 'record.txt' + settings.setdefault('source_path', 'dependencies.txt') + settings.setdefault('settings_overrides', {}) + settings['settings_overrides'] = settings['settings_overrides'].copy() + settings['settings_overrides']['_disable_config'] = 1 + if not settings['settings_overrides'].has_key('record_dependencies'): + settings['settings_overrides']['record_dependencies'] = \ + docutils.utils.DependencyList(recordfile) + docutils.core.publish_file(destination=DocutilsTestSupport.DevNull(), + **settings) + settings['settings_overrides']['record_dependencies'].close() + return open(recordfile).read().splitlines() + + def test_dependencies(self): + self.assertEqual(self.get_record(), + ['include.txt', + 'raw.txt']) + self.assertEqual(self.get_record(writer_name='latex'), + ['include.txt', + 'raw.txt', + 'some_image.png']) + + def test_csv_dependencies(self): + try: + import csv + self.assertEqual(self.get_record(source_path='csv_dep.txt'), + ['csv_data.txt']) + except ImportError: + pass + + def test_stylesheet_dependencies(self): + + # Parameters to publish_file. + s = {'settings_overrides': {}} + so = s['settings_overrides'] + so['stylesheet_path'] = 'stylesheet.txt' + so['stylesheet'] = None + s['writer_name'] = 'html' + self.assert_('stylesheet.txt' not in + self.get_record(**s)) + so['embed_stylesheet'] = 1 + self.assert_('stylesheet.txt' in + self.get_record(**s)) + del so['embed_stylesheet'] + s['writer_name'] = 'latex' + self.assert_('stylesheet.txt' in + self.get_record(**s)) + + +if __name__ == '__main__': + unittest.main() |
