Hi Floris, On Fri, Aug 01, 2014 at 22:09 +0100, Floris Bruynooghe wrote: > Hi, > > On 29 July 2014 09:24, Anatoly Bubenkov <bubenk...@gmail.com> wrote: > > what do you think about extending the existing assert representation with > > this > > https://pypi.python.org/pypi/datadiff > > would be nice if we could extend datadiff with what pytest does for string > > diff > > So datadiff is not as good as comparing strings then what py.test does now? > > > and then just use datadiff for all assertions > > because for now, it's not too useful to see a comparison of 2 dicts in the > > pytest > > it's not readable > > especially if 2 dicts are big > > We should always strive to make the assertions better. If you think > they can be improved using datadiff then let's improve it. The > current reprs where simply derived from unittest2 with some > improvements from feedback later. > > > the reason why im asking without the PR is the politics about the > > dependencies > > as i know you're not so positive about adding them > > I guess new external dependencies are not ideal. But looking at > datadiff it seems to be only about 300 lines of Apache licensed code. > That's not a lot of code by any means. So I think there are a few > options which I think are realistic: > > * Vendor datadiff, I think the licenses are compatible. > > * Re-write what datadiff produces directly inside > _pytest/assertion/utils.py. It's not that a crazy task. This is only > a bad idea if datadiff keeps evolving a lot, but given it's last > commit was in 2012 I think we're fine.
That's the best option IMO. > * Have datadiff as an optional dependency, if it's importable we use > it for comparing stuff, otherwise use py.test's built in code. I > guess I'd be -0 on this one. > > There's also the option of an external plugin which was already > mentioned, but I think we should aim for the best exceptions out of > the box (which is why i'm -0 on the last option). > > > So I'm all for improving out of the box assertion reprs. The simplest > option is vendoring datadiff (maybe with a few tweaks), any objections > to that approach? The only downside I see is that the license becomes > more complicated. Isn't it maybe enough to look at the improved output and implement it? I'd ideally like to avoid licensing complications because i somewhat often get questions from companies and distributors wrt to licensing. But i agree it's not a super-big deal in this case likely. best, holger > > Regards, > Floris > > > -- > Debian GNU/Linux -- The Power of Freedom > www.debian.org | www.gnu.org | www.kernel.org > _______________________________________________ > Pytest-dev mailing list > Pytest-dev@python.org > https://mail.python.org/mailman/listinfo/pytest-dev > _______________________________________________ Pytest-dev mailing list Pytest-dev@python.org https://mail.python.org/mailman/listinfo/pytest-dev