Pysys

Latest version: v2.2

Safety actively analyzes 629811 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 5 of 7

0.4.0

--------------
- The OSFAMILY constant has been added to pysys.constants, and takes the
value 'windows' on all win32 operating systems, and 'unix' on sunos and
linux operating systems. The value of the OSFAMILY can be used within
the .pysysproject file using the osfamily attribute to the <property>
element. This allows capturing the value to be used in expansion of
other properties defined within the project file; see below for an
example usage. Should no value be set in a properties file, a default
value of "osfamily" is assumed.
- The .pysysproject file now allows explicitly setting the environment
value to be used in expansions via the environment attribute to the
<property> element; see
below for an example usage. Should no value be set in a properties file,
a default value of "env" is assumed (this allows for backwards compatibility).
- The .pysysproject file now takes the file attribute to the <property>
element. This allows properties to be read from file, where the
properties are specified in the name=value syntax, e.g. ::

<pysysproject>
<property environment="env"/>
<property osfamily="osfamily"/>
<property file="${osfamily}.properties" />
<property name="lib" value="${library}_${osfamily}_${version}_${env.USER}.so"/>
</pysysproject>

where the property file contains the following::

version=1.0
library=jstore${version}.jar

For more details, see testcase PySys_internal_002 in the
pysys-examples/internal area which demonstrates this.

- Fixed the issue of removing zero size files from the output subdirectory
on win32 platforms; was due to the stderr and stdout file handles not
being properly closed down. Updated the BaseRunner to attempt to remove
the zero sized files 3 times to try to avoid race conditions of stopped
background processes holding on to the file handles too long before dying.
- The win32 process helper now ensures the environment in which the
process runs is converted to unicode to avoid issues encountered with
running under certain locales.

0.3.5

--------------
- The pysys.process.ProcessUser class has been added to define an
interface to subclasses which use the underlying process helper classes.
Both the BaseTest and BaseRunner classes now extend this so as to
provide a common interface for process manipulation. A common paradigm
for creating extension modules to PySys is to create a helper class
which provides the methods for starting an interacting with the
application under test (AUT). These helper classes have a call back to
an instance of the ProcessUser so that it can make use of the high level
process methods. As both the BaseTest and BaseRunner classes are
instances of the ProcessUser, the extension module helper classes can be
used in extensions to both of these to allow the AUT to be started both
within a testcase, and within the runner.
- The method signature to the pysys.utils.filereplace replace method has
been changed to set the default value for the marker to the empty string
- Bugs fixes for cleaning up leakage of threads from the process helpers,
and file handle leakage from the base runner classes.

0.3.4

--------------
- Fixed a bug a testcase was not being marked as BLOCKED when unable to
start a process using the process helper module.
- Failure on the assertOrderedGrep now prints out the line the failure
occurred on.

0.3.3

--------------
- Fixed a bug where timedout processes started in the foreground were not
being stopped automatically at the end of the testcase.

0.3.2

--------------
- The default name of the PySys test descriptor file has been changed from
"descriptor.xml", to ".pysystest". This change is to maintain a consistent
naming convention across configuration files within the framework, e.g.
the project file ".pysysproject" denotes the project root and project
specific information, whilst a test file ".pysystest" denotes a testcase
within the project, and contains meta data for the test. Support for the
previous name is maintained, though it should be noted that testcases
created with the 'pysys.py make' command will have the new naming
convention used.
- The windows installer has been updated to add shortcuts to the
uninstaller, and to create a separate directory for the inclusion of
project extensions.
- The getInstanceCount method has been added to the
pysys.basetest.BaseTest class to reference count the number of named
processes started during a test run. The startProcess method of the
class adds a reference count to an internal dictionary
structure keyed on the displayName passed into the method to achieve
this.
- The writeProcess method has been added to the pysys.basetest.BaseTest
class to provide a wrapper around the write method of the underlying
process helper class. This wrapper perform a check on the running status
of the process prior to the write, and performs additional logging to
the run.log to audit the write.
- Fixed a bug in the replace method of the filereplace module, where the
method signature was missing the marker parameter
- Added support to the pysys project file to allow adding path locations
to the Python path. See the .pysysproject file in pysys-examples for
more detail.

0.3.1

--------------
- Release was superseded immediately by the 0.3.3 release. See release
notes for new features for 0.3.3 for more information.

Page 5 of 7

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.