Revision: 139
Author: tim.lauridsen
Date: Sat May 8 00:00:44 2010
Log: move tidy to utils.py to avoid circular imports
http://code.google.com/p/iniparse/source/detail?r=139
Modified:
/trunk/iniparse/__init__.py
/trunk/iniparse/ini.py
/trunk/tests/test_fuzz.py
/trunk/tests/test_tidy.py
=======================================
--- /trunk/iniparse/__init__.py Fri Feb 26 09:12:27 2010
+++ /trunk/iniparse/__init__.py Sat May 8 00:00:44 2010
@@ -3,9 +3,10 @@
# Copyright (c) 2007 Tim Lauridsen <
t...@rasmil.dk>
# All Rights Reserved. See LICENSE-PSF & LICENSE for details.
-from ini import INIConfig, tidy, change_comment_syntax
+from ini import INIConfig, change_comment_syntax
from config import BasicConfig, ConfigNamespace
from compat import RawConfigParser, ConfigParser, SafeConfigParser
+from utils import tidy
from ConfigParser import DuplicateSectionError, \
NoSectionError, NoOptionError, \
=======================================
--- /trunk/iniparse/ini.py Fri Feb 26 09:12:27 2010
+++ /trunk/iniparse/ini.py Sat May 8 00:00:44 2010
@@ -45,7 +45,6 @@
from ConfigParser import DEFAULTSECT, ParsingError,
MissingSectionHeaderError
import config
-import compat
class LineType(object):
line = None
@@ -642,47 +641,3 @@
raise exc
-def tidy(cfg):
- """Clean up blank lines.
-
- This functions makes the configuration look clean and
- handwritten - consecutive empty lines and empty lines at
- the start of the file are removed, and one is guaranteed
- to be at the end of the file.
- """
-
- if isinstance(cfg, compat.RawConfigParser):
- cfg = cfg.data
- cont = cfg._data.contents
- i = 1
- while i < len(cont):
- if isinstance(cont[i], LineContainer):
- tidy_section(cont[i])
- i += 1
- elif (isinstance(cont[i-1], EmptyLine) and
- isinstance(cont[i], EmptyLine)):
- del cont[i]
- else:
- i += 1
-
- # Remove empty first line
- if cont and isinstance(cont[0], EmptyLine):
- del cont[0]
-
- # Ensure a last line
- if cont and not isinstance(cont[-1], EmptyLine):
- cont.append(EmptyLine())
-
-def tidy_section(lc):
- cont = lc.contents
- i = 1
- while i < len(cont):
- if (isinstance(cont[i-1], EmptyLine) and
- isinstance(cont[i], EmptyLine)):
- del cont[i]
- else:
- i += 1
-
- # Remove empty first line
- if len(cont) > 1 and isinstance(cont[1], EmptyLine):
- del cont[1]
=======================================
--- /trunk/tests/test_fuzz.py Fri Feb 26 09:12:27 2010
+++ /trunk/tests/test_fuzz.py Sat May 8 00:00:44 2010
@@ -4,7 +4,7 @@
import unittest
import ConfigParser
from StringIO import StringIO
-from iniparse import compat, ini
+from iniparse import compat, ini, tidy
# TODO:
# tabs
@@ -101,7 +101,7 @@
# compare the two configparsers
self.assertEqualConfig(cc_py, cc)
# check that tidy does not change semantics
- ini.tidy(cc)
+ tidy(cc)
cc_tidy = ConfigParser.RawConfigParser()
cc_tidy.readfp(StringIO(str(cc.data)))
self.assertEqualConfig(cc_py, cc_tidy)
=======================================
--- /trunk/tests/test_tidy.py Fri Feb 26 09:12:27 2010
+++ /trunk/tests/test_tidy.py Sat May 8 00:00:44 2010
@@ -2,7 +2,8 @@
from textwrap import dedent
from StringIO import StringIO
-from iniparse.ini import INIConfig, EmptyLine, tidy
+from iniparse import tidy,INIConfig
+from iniparse.ini import EmptyLine
from iniparse.compat import ConfigParser
class test_tidy(unittest.TestCase):
--
To post to this group, send email to
iniparse...@googlegroups.com
To unsubscribe from this group, send email to
iniparse-commi...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/iniparse-commits?hl=en