+1

Vinzent

On 18 Nov., 15:26, "Ondrej Certik" <[EMAIL PROTECTED]> wrote:
> On Tue, Nov 18, 2008 at 3:14 PM, Ondrej Certik <[EMAIL PROTECTED]> wrote:
> > Previously, the examples directory was checked for code style. However, when
> > the user installs sympy using "./setup.py install", the examples are not
> > installed (at least not in the parent directory of "sympy"), so the result 
> > is
> > that sympy.test() fails.
>
> > Now we only check the examples dir if it's present.
> > ---
> >  sympy/utilities/tests/test_code_quality.py |   45 
> > ++++++++++++++++-----------
> >  1 files changed, 27 insertions(+), 18 deletions(-)
>
> > diff --git a/sympy/utilities/tests/test_code_quality.py 
> > b/sympy/utilities/tests/test_code_quality.py
> > index 66accf7..b2f2e91 100644
> > --- a/sympy/utilities/tests/test_code_quality.py
> > +++ b/sympy/utilities/tests/test_code_quality.py
> > @@ -59,11 +59,27 @@ def test_no_trailing_whitespace_and_no_tabs():
> >     path = split(__file__)[0]
> >     path = path + sep + pardir + sep + pardir # go to sympy/
> >     sympy_path = abspath(path)
> > +    assert exists(sympy_path)
> > +    check_directory_tree(sympy_path)
> >     examples_path = abspath(join(path + sep + pardir, "examples"))
> > -    paths = (sympy_path, examples_path)
> > -    for p in paths:
> > -        assert exists(p)
> > -        check_directory_tree(p)
> > +    # Remember that this test can be executed when examples are not 
> > installed
> > +    # (e.g. after "./setup.py install"), so don't raise an error if the
> > +    # examples are not found:
> > +    if exists(examples_path):
> > +        check_directory_tree(examples_path)
> > +
> > +def check_directory_tree_imports(p, exclude):
> > +    for root, dirs, files in walk(p):
> > +        for fname in glob(join(root, "*.py")):
> > +            if filter(lambda ex: ex in fname, exclude):
> > +                continue
> > +            file = open(fname, "r")
> > +            try:
> > +                for idx, line in enumerate(file):
> > +                    if re.match("^\s*from.*import.*\*",line):
> > +                        assert False, message_implicit % (fname, idx+1)
> > +            finally:
> > +                file.close()
>
> >  def test_implicit_imports():
> >     """
> > @@ -73,7 +89,6 @@ def test_implicit_imports():
> >     path = path + sep + pardir + sep + pardir # go to sympy/
> >     sympy_path = abspath(path)
> >     examples_path = abspath(join(path + sep + pardir, "examples"))
> > -    paths = (sympy_path, examples_path)
> >     exclude = set([
> >         "%(sep)sthirdparty%(sep)s" % sepd,
> >         "%(sep)s__init__.py" % sepd,
> > @@ -81,16 +96,10 @@ def test_implicit_imports():
> >         "%(sep)smpmath%(sep)s" % sepd,
> >         "%(sep)splotting%(sep)s" % sepd,
> >     ])
> > -    for p in paths:
> > -        assert exists(p)
> > -        for root, dirs, files in walk(p):
> > -            for fname in glob(join(root, "*.py")):
> > -                if filter(lambda ex: ex in fname, exclude):
> > -                    continue
> > -                file = open(fname, "r")
> > -                try:
> > -                    for idx, line in enumerate(file):
> > -                        if re.match("^\s*from.*import.*\*",line):
> > -                            assert False, message_implicit % (fname, idx+1)
> > -                finally:
> > -                    file.close()
> > +    assert exists(sympy_path)
> > +    check_directory_tree_imports(sympy_path, exclude)
> > +    # Remember that this test can be executed when examples are not 
> > installed
> > +    # (e.g. after "./setup.py install"), so don't raise an error if the
> > +    # examples are not found:
> > +    if exists(examples_path):
> > +        check_directory_tree_imports(examples_path, exclude)
>
> Are there any objections? I want to push this in asap and release beta2.
>
> Ondrej
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sympy-patches" group.
To post to this group, send email to sympy-patches@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sympy-patches?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to