From 899b804ec19314beff45ed05890031161c598e4f Mon Sep 17 00:00:00 2001 From: Bruno Oliveira Date: Mon, 28 Jul 2014 22:46:57 -0300 Subject: [PATCH] Improved the text a little --HG-- branch : cx_freeze-docs --- doc/en/example/simple.txt | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/doc/en/example/simple.txt b/doc/en/example/simple.txt index a5e1becd4..6b6163d58 100644 --- a/doc/en/example/simple.txt +++ b/doc/en/example/simple.txt @@ -681,7 +681,7 @@ and run it:: You'll see that the fixture finalizers could use the precise reporting information. -Integrate pytest runner with cx_freeze +Integrating pytest runner and cx_freeze ----------------------------------------------------------- If you freeze your application using a tool like @@ -689,18 +689,18 @@ If you freeze your application using a tool like to your end-users, it is a good idea to also package your test runner and run your tests using the frozen application. -This way you can detect packaging errors such as dependencies not being -included into the executable while also allowing you to send test files to -users so they can run them in their machines, which can be invaluable to -obtain more information about a hard to reproduce bug. +This way packaging errors such as dependencies not being +included into the executable can be detected early while also allowing you to +send test files to users so they can run them in their machines, which can be +invaluable to obtain more information about a hard to reproduce bug. Unfortunately embedding the ``pytest`` runner into a frozen executable using ``cx_freeze`` is not as straightforward as one would like, because ``pytest`` makes heavy use of dynamic module loading which ``cx_freeze`` can't resolve by itself. -To solve this, you have to manually include internal ``pytest`` and ``py`` -modules by using the ``build_exe`` option in your ``setup.py`` script like this:: +To solve this, you have to manually include ``pytest`` and ``py`` +modules by using the ``build_exe`` option in your ``setup.py`` script, like this:: # contents of setup.py from cx_Freeze import setup, Executable @@ -719,8 +719,8 @@ modules by using the ``build_exe`` option in your ``setup.py`` script like this: (For the complete list, check out the modules under ``_pytest`` in your site-packages). -With that, you can make your program pass control over to ``pytest`` by looking -for a certain flag and handing over the other arguments:: +With that, you can make your program check for a certain flag and pass control +over to ``pytest``:: # contents of app_main.py import sys @@ -733,6 +733,7 @@ for a certain flag and handing over the other arguments:: # by your argument-parsing library of choice as usual ... -Making it easy to execute your tests from within your frozen application:: +This makes it convenient to execute your tests from within your frozen +application, using standard ``py.test`` command-line:: - $ ./app_main --pytest --verbose --tb=long tests/ \ No newline at end of file + $ ./app_main --pytest --verbose --tb=long --junit-xml=results.xml test-suite/ \ No newline at end of file