Commit Graph

27 Commits

Author SHA1 Message Date
Jurko Gospodnetić 8a73caaa25 update development environment setup for Python 2.5
Latest pytest & py package releases break compatibility with Python 2.5.
2014-12-25 19:22:30 +01:00
Jurko Gospodnetić 62977f5969 port tools/run_all_tests.cmd to Python
Now uses the same list of Python environments as used by
'tools/setup_base_environments.py' stored inside the project's main
configuration file 'setup.cfg'.

Updated todo list.
2014-05-29 19:28:33 +02:00
Jurko Gospodnetić d4bf6becb8 read test Environment names from their config section names instead of commands 2014-05-28 19:53:26 +02:00
Jurko Gospodnetić c83ed42aa9 make reading test environment config automatically create Environment objects
This work is done as a part of preparing the code base to make it reusable in
the planned tools/run_all_tests.cmd Python port as there exactly the same
Environment objects will need to be created.
2014-05-28 19:51:06 +02:00
Jurko Gospodnetić 81af9cc694 fix error reporting when test environment config has an empty command option 2014-05-28 19:47:36 +02:00
Jurko Gospodnetić 6f9966c088 add missing tools/suds_devel/__init__.py module
Without this file, setup scripts run from a fresh checkout would fail because
they were not able to import the suds_devel module.
2014-05-28 14:16:41 +02:00
Jurko Gospodnetić 730a5191a8 specify exact test Python environment commands in setup.cfg
As before, configured project test environment startup commands use the '.cmd'
suffix as that matches the startup commands used on the current maintainer's
notebook, but now that suffix is no longer hardcoded and is explicitly specified
in the project's configuration file instead.
2014-05-28 12:18:53 +02:00
Jurko Gospodnetić 3a28776604 report current working folder before reading configuration 2014-05-28 10:17:58 +02:00
Jurko Gospodnetić 1a16ee3224 clean up version specific subprocess.DEVNULL using code 2014-05-28 06:27:20 +02:00
Jurko Gospodnetić 62ecd41743 make suds_devel.Environment class's initial environment scanning optional
This work is done as a part of preparing the code base to make it reusable in
the planned tools/run_all_tests.cmd Python port as there Environment objects
will only be used to run the project test suite in a specific Python environment
and will not require additional data collected about that environment.
2014-05-28 06:26:35 +02:00
Jurko Gospodnetić 6da14d36b3 improve suds_devel.utility.path_iter() docstring wording a bit 2014-05-27 10:47:03 +02:00
Jurko Gospodnetić 846bad000f improve script utility.Config class reusability
Now stores its script folder, project folder & ini file paths instead of having
each of its derived classes process that configuration for themselves.

This work is done as a part of preparing the code base to make it reusable in
the planned tools/run_all_tests.cmd Python port.
2014-05-27 10:46:13 +02:00
Jurko Gospodnetić 1d5ab1136f fix simple error handling bug
Detected by pressing Ctrl-C while the initial environment scan was in progress.
2014-05-27 10:27:22 +02:00
Jurko Gospodnetić 7d90d49db3 tools/setup_base_environments.py code cleanup
Since we import too many functions from the suds_devel.utility module, it seems
cleaner to import the module and use its functions by referencing them using an
explicit module prefix instead of importing each one of those functions
explicitly into the local namespace.
2014-05-27 10:20:18 +02:00
Jurko Gospodnetić 7168363c8a brown paper bag fix for broken setup on Python 2.4 2014-05-26 14:43:02 +02:00
Jurko Gospodnetić 34917137cc note benign 'setup.py test' error with colorama<0.1.11 & Python 2.5 on Windows 2014-05-26 13:43:27 +02:00
Jurko Gospodnetić 1aa98d0d90 require pytest 2.6.0 under Python 3.1
pytest 2.6.0 restores Python 3.1 compatibility that has been causing our project
testing to fail in that environment. Note that pytest 2.6.0 has not yet been
officially released but our project's testing has been tried out and found to be
working with the current pytest development tip.

Tested using both the 'setup.py test' command and the
'tools/setup_basic_environments.py' script.
2014-05-26 13:26:42 +02:00
Jurko Gospodnetić 9e94620274 remove code duplication between setup.py & tools/setup_base_environments.py
Duplicate code extracted to new modules under the suds_devel package:
  - specifying the project's requirements - requirements.py
  - specifying the used setuptool install script - ez_setup_versioned.py

Updated todo list.
2014-05-26 13:04:24 +02:00
Jurko Gospodnetić 709409e59e test using Python 3.4.1
Updated related project documentation & test scripts.
2014-05-22 19:44:17 +02:00
Jurko Gospodnetić 1618ae351f reorganize tests - run on installed suds version + do not require py2to3
The test suite is no longer installed together with the project and can now be
run from the project's source distribution. This resolves the issue of the suds
test suite confusing users by getting installed as a top level tests package in
their Python environment.

Project to be tested now need to be explicitly installed prior to running its
tests using pytest, except in case of Python 2 tests being run from the top
level project folder. This requires the user to install the project (suggested
way is to install it in editable mode using 'pip install -e') but also allows
him to run the tests on other non-sandbox project versions, e.g. an externally
installed version.

Project testing now requires the six Python 2/3 compatibility support package
(installed automatically, together with other test requirements).
Test support code now moved to a separate testutils package located under the
tests folder.
Updated project README.rst & HACKING.rst docs.
Minor stylistic changes.
2014-05-17 14:08:18 +02:00
Jurko Gospodnetić 34bcf2a476 update setup_base_environments.py to never install pytest below version 2.4.0 2014-05-17 13:30:37 +02:00
Jurko Gospodnetić 55725b4d93 make setup.py install py<1.4.16dev0 instead of py==1.4.15 under Python 2.4.x 2014-05-16 23:38:31 +02:00
Jurko Gospodnetić 9f94b0035f clean up setup.py code - minor stylistic changes 2014-05-16 23:36:42 +02:00
Jurko Gospodnetić 07ba0758e3 standardize code comment for removing a circular reference chain in Python 3 2014-05-16 23:36:09 +02:00
Jurko Gospodnetić 549a7c800f update todo list
One of the tools/setup_base_evironments.py related todo items there transferred
over to an embedded TODO source comment.
2014-05-15 18:34:59 +02:00
Jurko Gospodnetić ea02fb96ad add tools/setup_base_environments.py development script
Installs packages into multiple Python environments so they can be used for
testing this project. This automates all the previously manually done work on
setting up those environments.

The script contains a multitude of open TODO comments and should still be
considered 'work in progress', but successfully gets the work done at least on
one Windows 7 x64 SP1 machine with 17 different parallel Python installations.

Updated relevant HACKING.rst docs.

Relevant configuration added to the main project Python configuration file
'setup.cfg'.

All Python modules indended for use in different project development utility
scripts have been placed under the suds_devel package folder located under the
tools project folder.

The new scripts:
 - are included in the project's source distribution,
 - are not installed with the project
 - do not need py2to3 processing
 - do not have any tests of their own yet

tools/__* folders get created and used as local caches by the new
tools/setup_base_environments.py development script and so must not included in
the project's source distribution.
2014-05-15 17:10:55 +02:00
Jurko Gospodnetić c6b64a1849 add new tools folder for holding internal project development utility scripts
Moved the top-level run_all_tests.cmd script under the newly added tools folder.
Updated relevant docs.
2014-05-15 15:36:26 +02:00