Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #100140

Re: manually build a unittest/doctest object.

From Peter Otten <__peter__@web.de>
Newsgroups comp.lang.python
Subject Re: manually build a unittest/doctest object.
Date 2015-12-08 10:06 +0100
Organization None
Message-ID <mailman.53.1449565611.12405.python-list@python.org> (permalink)
References <CALyJZZXeRaFxxdDK6aNSZC4xyqn082kZCGtgYBQxnBqKU-_WEg@mail.gmail.com>

Show all headers | View raw


Vincent Davis wrote:

> If I have a string that is python code, for example
> mycode = "print('hello world')"
> myresult = "hello world"
> How can a "manually" build a unittest (doctest) and test I get myresult
> 
> I have attempted to build a doctest but that is not working.
> e = doctest.Example(source="print('hello world')/n", want="hello world\n")
> t = doctest.DocTestRunner()
> t.run(e)

There seems to be one intermediate step missing:

example --> doctest --> runner

>>> import doctest
>>> example = doctest.Example(
...     "print('hello world')\n",
...     want="hello world\n")
>>> test = doctest.DocTest([example], {}, None, None, None, None)
>>> runner = doctest.DocTestRunner(verbose=True)
>>> runner.run(test)
Trying:
    print('hello world')
Expecting:
    hello world
ok
TestResults(failed=0, attempted=1)

But why would you want to do that?

Back to comp.lang.python | Previous | Next | Find similar | Unroll thread


Thread

Re: manually build a unittest/doctest object. Peter Otten <__peter__@web.de> - 2015-12-08 10:06 +0100

csiph-web