Commit Graph

122 Commits

Author SHA1 Message Date
Jurko Gospodnetić 56e581706f update todo list 2015-07-27 11:08:20 +02:00
Jurko Gospodnetić 4458125828 test suds.mx.typer.Typer.getprefix()
Added basic unit tests for this function, together with some new cleanup todo
items related to the function's current implementation and test code details.
2015-07-14 11:27:40 +02:00
Jurko Gospodnetić f0ba96e23e fix Typer.genprefix() code broken in recent code cleanup
Unfortunately not covered by the existing test suite, and only added a TODO note
to add the missing tests.
2015-07-14 10:04:41 +02:00
Jurko Gospodnetić 29f6b5917f fix handling recursive XSD imports
Now XSD import does not attempt to refetch XSD schemas already constructed
during the same XSD load operation.

Updated todo list.
Updated project release notes.
2015-07-01 11:46:19 +02:00
Jurko Gospodnetić ab2b7a4c5c fix broken recursive WSDL imports
Suds now correctly handles twisted use-cases as seen in some M$ web services,
and whose one possible structure has been illustrated by the
test_recursive_WSDL_import() test in the test_client.py test module.

Note that this has nothing to do with recursive XSD schema imports which still
have known issues.

Updated todo list.
2015-06-29 21:31:38 +02:00
Jurko Gospodnetić b28f1d32fa fix typo 2015-06-29 00:13:02 +02:00
Jurko Gospodnetić 8eeb515872 add an xfail test demonstrating a bug with recursive WSDL imports 2015-06-28 22:33:49 +02:00
Jurko Gospodnetić da40a0153a test referencing imported WSDL entities with same base & imported tns
Updated todo list.
2015-06-28 22:02:06 +02:00
Jurko Gospodnetić d9c4f21b1d update todo list 2015-06-28 19:50:00 +02:00
Jurko Gospodnetić e7dd8e6e51 remove invalid test_WSDL_import() test
When one WSDL imports another, this does not mean that the components from the
imported WSDL become part of the importing WSDL, but only means that importing
WSDL's components may now reference components from the imported WSDL.

The fact that suds currently imports actual components into the importing WSDL
is in fact a possible bug (unless it is just a part of some internal
implementation detail with no publicly visible side-effects, but even then such
a kludge should be made clearer in code).
2015-06-28 19:49:02 +02:00
Jurko Gospodnetić 116812f4c5 update todo list 2014-06-29 21:54:49 +02:00
Jurko Gospodnetić 4d1cfd77a0 update todo list 2014-06-28 15:07:19 +02:00
Jurko Gospodnetić 80f9eaac66 fix reading a reference XSD element's 'form' value
A reference XSD element's 'form' value is now correctly read from its referenced
element.

This fix:
 * fixes all tests in test_xsd_element.py previously marked as xfail,
 * corrects buggy test data in test_request_construction.py and
 * resolves project issue #49 on BitBucket.

Updated release notes.
Updated todo list.
2014-06-28 14:54:05 +02:00
Jurko Gospodnetić 0ddbb3c75f add XSD schema element related unit tests
New tests marked as expected to fail demonstrate a bug in the original suds
implementation's XSD element `form` attribute value handling. It seems that suds
uses incorrectly detects a referencing element's `form` attribute value - it
should but does not pick up the attribute value from the referenced element
instead of the referencing one (whether it is set directly or using their
schema's `elementFormDefault` attribute).

Updated todo list.
2014-06-27 20:58:11 +02:00
Jurko Gospodnetić 7f1757de5c update todo list 2014-06-27 16:53:01 +02:00
Jurko Gospodnetić 28d845a383 update todo list 2014-06-27 01:16:19 +02:00
Jurko Gospodnetić cff889cf25 update todo list 2014-06-23 08:30:10 +02:00
Jurko Gospodnetić b79955e41f update todo list 2014-06-15 22:23:03 +02:00
Jurko Gospodnetić 1c3f56d1f5 update todo list 2014-06-15 22:02:14 +02:00
Jurko Gospodnetić ecf7b75011 update todo list 2014-06-15 21:20:40 +02:00
Jurko Gospodnetić 8f3973c689 update todo list 2014-06-15 20:12:39 +02:00
Jurko Gospodnetić 8f424659d7 add basic suds.sax.element unit tests
For now just tests:
  - basic Element construction,
  - construction name parameter handling
  - childAtPath() method

Updated todo list, including adding many new todo items related to adding new
tests.
2014-06-14 23:59:35 +02: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ć 5987d4332d update todo list 2014-05-26 15:06:49 +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ć 8d5951f309 update todo list 2014-05-17 14:09:46 +02:00
Jurko Gospodnetić 411dae9c9c add support for releasing suds as a wheel distribution 2014-05-15 20:01:36 +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ć 2878d70754 update todo list 2014-03-23 18:45:06 +01:00
Jurko Gospodnetić 144d147a41 update todo list 2014-03-05 08:26:45 +01:00
Jurko Gospodnetić f70ce47c52 update todo list 2014-03-03 18:54:20 +01:00
Jurko Gospodnetić eedb21f0ac update todo list 2014-03-03 14:55:44 +01:00
Jurko Gospodnetić 339eaaa984 update todo list 2014-02-28 15:32:16 +01:00
Jurko Gospodnetić 0e82a3be51 update todo list 2014-02-25 00:26:11 +01:00
Jurko Gospodnetić a2d80ca1a0 update todo list 2014-02-19 19:55:14 +01:00
Jurko Gospodnetić 18e60e2ca0 update todo list 2014-02-19 15:44:34 +01:00
Jurko Gospodnetić 1083dfaff9 update todo list 2014-02-19 12:06:54 +01:00
Jurko Gospodnetić bcf395424c clean up suds.transport ASCII/unicode URL/data handling
suds.transport.Request now allows specifying its URL input as either a byte or
a unicode string with any Python version. Internally that URL information is
always converted to the used Python interpreter's native str data type (byte
string for Python versions prior to 3.0, or unicode string for later ones).
Given URLs must not contain any non-ASCII characters and any attempt to create
a suds.transport.Request with such an invalid URL is reported as a UnicodeError
(either UnicodeDecodeError or UnicodeEncodeError depending on the exact Python
version and the given URL data type used).

suds.transport.Reply & suds.transport.Request string representation cleaned up
and no longer raise an error when their message data contains non-ASCII
characters.

Updated related class & method doctrings.
Updated related unit tests.
Updated todo list.
2014-02-17 22:28:51 +01:00
Jurko Gospodnetić a30b5e557f refactor HttpTransport tests to no longer use suds.client.Client
All the tests in this module now test HttpTransport behaviour directly instead
of going through the higher level suds.client.Client interface. Removed related
infrastructure, e.g package imports & utility functions. Several of the tests
renamed and their comments updated. Updated todo list.
2014-02-14 12:53:13 +01:00
Jurko Gospodnetić e08ef943db update todo list 2014-02-10 11:14:26 +01:00
Jurko Gospodnetić 9688c9012d update todo list 2014-02-10 01:31:39 +01:00
Jurko Gospodnetić 2349fb2f32 fix security issue CVE-2013-2217 - using fixed default cache location
Each process now uses a separate temporary folder as its default cache location.
Different FileCache instances within the same process still use the same default
cache location and user may still explicitly specify a non-default location for
each FileCache instance. Default cache location now gets removed automatically
on process exit unless user code explicitly disables this behaviour by setting
the FileCache.remove_default_location_on_exit class attribute to False.

Additional external information on this issue:
  * Red Hat bug 978696 - https://bugzilla.redhat.com/show_bug.cgi?id=978696
  * CVE-2013-2217 - http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-2217
  * Ubuntu USN-2008-1: Suds vulnerability - http://www.ubuntu.com/usn/USN-2008-1
  * http://lists.opensuse.org/opensuse-updates/2013-07/msg00062.html
  * https://bugzilla.novell.com/show_bug.cgi?id=827568
  * http://www.openwall.com/lists/oss-security/2013/06/27/8

Many thanks to Rolf Krahl for the initial report, providing links to related
external resources as well as helping brainstorm the whole issue.

Added related unit tests and updated existing ones affected by this change.
Updated related project release notes.
Updated todo list.
2014-02-09 04:57:26 +01:00
Jurko Gospodnetić cf4cd3c456 add an independent FileCache item expirations test
Accessing one expired FileCache item should not affect other existing FileCache
items and their underlying files should not be removed independent of whether
they themselves have already expired or not.
2014-02-07 18:18:07 +01:00
Jurko Gospodnetić a9e3b53fb1 add DocumentCache, FileCache & ObjectCache item expiration tests 2014-02-07 13:30:10 +01:00
Jurko Gospodnetić 79bc56eb07 update todo list 2014-02-07 10:15:23 +01:00
Jurko Gospodnetić 10bf80ec0f update todo list 2014-02-07 01:57:45 +01:00
Jurko Gospodnetić 962b7bc8c2 update todo list 2014-02-03 13:10:34 +01:00
Jurko Gospodnetić 79aa923077 improve decimal XSD data type support
Such values now modeled using Python's decimal.Decimal class. Original suds
implementation represented them using Python's float type which could result in
both precision loss and incorrectly constructed SOAP request XML documents.
2014-01-30 18:46:06 +01:00
Jurko Gospodnetić 5e10e47d96 update todo list 2014-01-29 22:01:44 +01:00
Jurko Gospodnetić d7694e5cba update todo list 2014-01-29 19:09:16 +01:00