Nice, be sure to keep the mailing list informed. :) Cheers,
On Tue, Jul 29, 2014 at 5:17 PM, Anatoly Bubenkov <bubenk...@gmail.com> wrote: > Yes I'll do it as a separate plugin first > Then we can think about including it in the core > On Jul 29, 2014 9:46 PM, "Bruno Oliveira" <nicodde...@gmail.com> wrote: > >> Hi, >> >> Perhaps this could a plugin (pytest-datadiff)? I know you can customize >> assertion messages for other types (see >> http://pytest.org/latest/assert.html#defining-your-own-assertion-comparison), >> but I don't know how that plays with assertions already built in pytest. >> >> Cheers, >> >> >> On Tue, Jul 29, 2014 at 5:24 AM, 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 >>> 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 >>> and nowadays, json so dicts are everywhere >>> datadiff is cool at showing the diff between 2 dicts >>> 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 >>> also this standalone mode is a bit tricky in that case, i guess >>> example: >>> >>> def test_ticket_filter_on_order_uid__in(app, first_ticket, >>> second_ticket, second_basket_ticket, order, second_order): >>> """Test if the right result is returned when filtering on basket.""" >>> ticket_filter = pta.ticket.filter(api_key=app.uid, >>> order_uid__in=[order['uid']]).content >>> > assert ticket_filter == [first_ticket, second_ticket] >>> E assert [{'code': '91...dulum'}, ...}] == [{'basket_uid'... 'EUR'}, >>> ...}] >>> E At index 0 diff: {'code': '911338060856', 'subtitle': {'en': >>> u'Subtitle1 Kaleidoscope'}, 'uid': u'37bc3c15e66a45e9bf3b52233fcdff02', >>> 'order_uid': u'08dec1bd7ec249109729de448ffcc571', 'price': {'currency': >>> 'EUR', 'amount': '1.20'}, 'fees': [{'price': {'currency': 'EUR', 'amount': >>> '2.00'}, 'type': 'service costs'}], 'product_uid': >>> u'32c2a6f98f0642b9843a8dcce6dead56', 'name': {'en': u'Ticket1 \u2603 >>> Weapon'}} != {'subtitle': {'en': u'Subtitle1 Kaleidoscope'}, 'uid': >>> u'37bc3c15e66a45e9bf3b52233fcdff02', 'price': {'currency': 'EUR', 'amount': >>> '1.20'}, 'fees': [{'price': {'currency': 'EUR', 'amount': '2.00'}, 'type': >>> 'service costs'}], 'basket_uid': u'871e829da04e4cd9a45d244f55824c83', >>> 'product_uid': u'32c2a6f98f0642b9843a8dcce6dead56', 'name': {'en': >>> u'Ticket1 \u2603 Weapon'}} >>> just unreadable >>> >>> >>> -- >>> Anatoly Bubenkov >>> >>> _______________________________________________ >>> 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