[Python-Dev] Introducing GSOC student James Pruitt

2009-05-24 Thread Charles McCreary
I am a mentor for a GSOC 2009 student working on a PSF project. His project
abstract is "Handling of subprocess async io issues, testing and
reimplementing the commands module in terms of subprocess." He has started a
blog, http://subdev.blogspot.com/, in which he is providing general
information on his GSOC project. In the next few days, he will start a
project on google code so that interested parties can help guide his work. I
urge anyone interested in the subprocess module to interact with Mr. Pruitt
and provide feedback/suggestions/encouragement.

Charles R. McCreary
___
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] Optional delta argument for assertAlmostEqual

2010-03-27 Thread Charles McCreary
Perhaps not just absolute but relative tolerance, e.g.:

def isclose(x, y, rtol=1.e-5, atol=1.e-8):
return abs(x-y) <= atol + rtol * abs(y)

On Fri, Mar 26, 2010 at 7:59 PM, Michael Foord wrote:

> Hello all,
>
> A user has suggested an optional argument to
> unittest.TestCase.assertAlmostEqual for specifying a maximum difference
> between the expected and actual values, instead of using rounding.
>
> This sounds great to me as the default implementation of assertAlmostEqual
> has *never* been useful to me (YMMV). In fact one of the first things I do
> on setting up a test suite is provide a TestCase that overrides
> assertAlmostEqual with an implementation that uses a delta rather than
> rounding.
>
> The implementation would be effectively:
>
> assert abs(actual - expected) < delta
>
> This has the advantage that it allows things like:
>
> self.assertAlmostEqual(timeStamp, expected,
> delta=datetime.timedelta(seconds=5))
>
> The issue is this would make the signature of assertAlmostEqual (and its
> negative counterpart):
>
> def assertAlmostEqual(self, first, second, places=7, msg=None, delta=None)
>
> Note that delta comes after msg, which is different to other assert
> methods. To put delta before msg would be backwards incompatible with
> existing uses passing arguments positionally. In Python 3.2 we can make
> delta a keyword argument. Passing both places and delta would be an error
> (TypeError).
>
> Anyway, unless there are strenuous objections I intend to do this.
>
> All the best,
>
> Michael
>
> --
> http://www.ironpythoninaction.com/
> http://www.voidspace.org.uk/blog
>
> READ CAREFULLY. By accepting and reading this email you agree, on behalf of
> your employer, to release me from all obligations and waivers arising from
> any and all NON-NEGOTIATED agreements, licenses, terms-of-service,
> shrinkwrap, clickwrap, browsewrap, confidentiality, non-disclosure,
> non-compete and acceptable use policies (”BOGUS AGREEMENTS”) that I have
> entered into with your employer, its partners, licensors, agents and
> assigns, in perpetuity, without prejudice to my ongoing rights and
> privileges. You further represent that you have the authority to release me
> from any BOGUS AGREEMENTS on behalf of your employer.
>
>
> ___
> Python-Dev mailing list
> Python-Dev@python.org
> http://mail.python.org/mailman/listinfo/python-dev
> Unsubscribe:
> http://mail.python.org/mailman/options/python-dev/charles.r.mccreary%40gmail.com
>



-- 
Charles McCreary P.E.
CRM Engineering
903.643.3490 - office
903.224.5701 - mobile/GV
___
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] Optional delta argument for assertAlmostEqual

2010-03-28 Thread Charles McCreary
A good summary on floating point comparison algorithms can be found at

http://www.boost.org/doc/libs/1_34_0/libs/test/doc/components/test_tools/floating_point_comparison.html

I, too, redefine almostEquals so that the comparison is more robust

+1

On Sun, Mar 28, 2010 at 2:06 AM, Steven D'Aprano wrote:

> On Sun, 28 Mar 2010 02:54:19 pm Charles McCreary wrote:
> > Perhaps not just absolute but relative tolerance, e.g.:
> >
> > def isclose(x, y, rtol=1.e-5, atol=1.e-8):
> > return abs(x-y) <= atol + rtol * abs(y)
>
> I'm not sure why you add the tolerances like that. Surely a more
> appropriate approach is to compare the values against the tolerances
> individually, and return True if they meet either condition.
>
> For what it's worth, here's a recipe I wrote for approximately equal,
> following someone's complaint on comp.lang.python that Python has no
> approximately-equal operator.
>
> http://code.activestate.com/recipes/577124-approximately-equal/
>
> Comments and criticism welcome.
>
> I've never found unittest.TestCase.assertAlmostEqual to be useful. I
> generally write my own comparison function, then call:
>
> assert_(compare(x, y))
>
> as needed. I'm +0.5 on Michael's suggested change -- it will make
> assertAlmostEqual marginally more useful, which is a plus, but I'm not
> sure that absolute tolerances are better than relative. But how general
> do we want to be? "Almost equal" means something different to everyone.
>
>
>
> > On Fri, Mar 26, 2010 at 7:59 PM, Michael Foord
> wrote:
> > > Hello all,
> > >
> > > A user has suggested an optional argument to
> > > unittest.TestCase.assertAlmostEqual for specifying a maximum
> > > difference between the expected and actual values, instead of using
> > > rounding.
> [snip]
>
>
>
> --
> Steven D'Aprano
> _______
> Python-Dev mailing list
> Python-Dev@python.org
> http://mail.python.org/mailman/listinfo/python-dev
> Unsubscribe:
> http://mail.python.org/mailman/options/python-dev/charles.r.mccreary%40gmail.com
>



-- 
Charles McCreary P.E.
CRM Engineering
903.643.3490 - office
903.224.5701 - mobile/GV
___
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com