From 9ea58242d432859264ff190de683a0c33f0927ec Mon Sep 17 00:00:00 2001 From: holger krekel Date: Wed, 15 Jun 2011 07:50:34 +0200 Subject: [PATCH] fix getting-started which claimed you need to avoid side effect in asserts --- doc/assert.txt | 7 +++++-- doc/getting-started.txt | 18 ++++-------------- 2 files changed, 9 insertions(+), 16 deletions(-) diff --git a/doc/assert.txt b/doc/assert.txt index fd9979032..ef9005f31 100644 --- a/doc/assert.txt +++ b/doc/assert.txt @@ -129,9 +129,12 @@ See the :ref:`reporting demo ` for many more examples. .. _assert-details: +.. _`assert introspection`: -Assertion introspection details -------------------------------- +Advanced assertion introspection +---------------------------------- + +.. versionadded:: 2.1 Reporting details about the failing assertion is achieved either by rewriting assert statements before they are run or re-evaluating the assert expression and diff --git a/doc/getting-started.txt b/doc/getting-started.txt index d8ff7fd08..2c1eef0af 100644 --- a/doc/getting-started.txt +++ b/doc/getting-started.txt @@ -61,20 +61,10 @@ py.test found the ``test_answer`` function by following :ref:`standard test disc .. note:: - You can simply use the ``assert`` statement for asserting - expectations because intermediate values will be presented to you. - This is arguably easier than learning all the `the JUnit legacy - methods`_. - - However, there remains one caveat to using simple asserts: your - assertion expression should better be side-effect free. Because - after an assertion failed py.test will re-evaluate the expression - in order to present intermediate values. You will get a nice warning - and you can easily fix it: compute the value ahead of the assert and - then do the assertion. Or maybe just use the assert "explicit message" - syntax:: - - assert expr, "message" # show "message" if expr is not True + You can simply use the ``assert`` statement for asserting test + expectations. pytest's :ref:`assert introspection` will intelligently + report intermediate values of the assert expression freeing + you from the need to learn the many names of `JUnit legacy methods`_. .. _`the JUnit legacy methods`: http://docs.python.org/library/unittest.html#test-cases