Arjuna

Latest version: v1.2.24

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

Scan your dependencies

Page 4 of 5

1.1.18

Changes since 1.1.0 are:

- Added datetime helper module in TPI
- Time, DateTime, DateTimeDelta, DateTimeDeltaBuilder, DateTimeStepper classes.
- Fix for non-existing central withx.yaml.
- Fix by Stefan for MySQL connector error.
- Added doc for project linking.
- Added doc for using selection rules in CLI and groups.yaml
- Doc comments for Text parsing module.
- Added documentation for Text parsing under Parsing section.
- Names of text parsers have been updated.
- Return type of headers in text file changed from list to tuple.
- DataRecord - indexed_values_as_json and named_values_as_json properties added.
- Added versions of dependencies in setup.py
- Arjuna version is included in the HTML report.
- Added Text parsing class with various File reading formats to TPI.
- Added support to ignore insecure SSL certificate in Web Gui Automation.
- ArjunaOption.ALLOW_INSECURE_SSL_CERT can be set to False to switch this off (True by default). The browser should support this capability.
- Concept of Linked Arjuna Projects introduced. An Arjuna Project can be linked to other Arjuna Projects (only one level of relationship allowed).
- -l/--link-project CLI option added.
- Support for auto-merger of default ref configuration for parent project with all linked projects (including default data & env options merger with ref.)
- Support for auto-merger of data and environment configurations. The combinations are also included. However, combinations are created only project-wise (i.e. linked project data or env is not combined with data/env of top or other linked projects.)
- Support for auto-import of test resources defined in linked projects in the parent project (conftest.py auto-generation is improved to cater to this.)
- Support for fallback lookup of DBAuto SQL files from top project to linked projects in reversed order.
- Support for auto-merger of data references. If data references have same names, then preference order is top project and then linked projects in reverse order.
- Rudimentary support for DB Automation (experimental)
- Added DBAUTO_DIR and DBAUTO_SQL_DIR Arjuna options.
- DB.mysql factory.
- --rename-report option added to run-group CLI. Reports are generated without session and stage prefix for this option.
- Support for double click in GuiElement.
- HTML report name changed.
- Added more project meta data to HTML report as well as Arjuna & pytest command line, reference configuration name.
- DEPS_DIR can be a path relative to the root of an Arjuna Test Project.
- run-group option works even if sessions.yaml and stages.yaml are empty.
- Fix in token logic for Client Grant in HTTP.
- Added support for Dependency directory (ArjunaOption.DEPS_DIR). Defaults to <project>/dependency. Can be overriden in reference conf.
- Fixed sesssion level header addition in Http Session.
- Support for Python list as content in Http methods.
- Added support for hard refresh.
- The pytest command on Windows has been changed w.r.t. capturing of console output/logs as it causes errors.

1.1.0

Changes since 1.0.17 are:

Docs
- Updated format of various docs
- Included third party library info in index.rst
- Updated license and notice files.
- Data reference TPI docs.
- Added Test Reporting section.
- Docs for Screenshooter and Network recorder protocols.
- Stage level list of overridable configuration options.
- Logging and Tracking
- Updated HTTP Auto docs to include Http Facade class.
- Multiprocessing for parallelism reverted to multithreading. Needs to be explored in future versions.
- register_configs hook name changed to register_ref_confs for clarity.
HTTP Auto
- Http.content.json implements custom JSON encoder to handle nested structures containing Yaml or Json custom objects.
Fixes
- Fixed oauth_implicit_grant_session in http.py.

1.0.17

A major update for HTTP Automation. Adds many more facilities and HTTP Facade class.

Http Automation
- Http Facade class added. Sessions are created using this class. Also supports quick sender methods with temp session creation.
- Support for basic and digest authentication.
- The session module is split into multiple modules for better maintenance as the code became large for single file.
- Added support for HEAD, PATCH, OPTIONS methods.
- Request headers property added for inquiry.
- is_redirect property added to HttpResponse
- Header assertions added.
- Support for pretty URL format for query params
- Support for query_params as a dict, for use when names are not valid python names.
- Added new named exceptions: HttpSendError, HttpConnectError, HttpRequestCreationError
- `content` as an alias for `text` for request and response objects.
- Redirections: max_redirects at session level (default 30), allow_redirects at individual send request level (default is True).
- Cookies can be added/overriden at request level.
- HttpResponse.cookies property added.
- Provision for request timeout.
- Support for setting proxy at session level.
- Support for utf8, bytes, file and multipart content type.
Configuration
- Added ArjunaOption.DATA_FILE_DIR to contain files that are supposed to be used as file data.
- create-project command creates project/data/file directory with a placeholder.
Data References
- Moved IndexedDataReference and ContextualDataReference classes to TPI.
NodeLocator
- Now available as Xml.node_locator

1.0.16

- Fixed run-session/run-stage/run-group commands as per changes in YAML.
- Parallel execution uses multiprocessing instead of multithreading now.
- Different Reference configs can be provided for different groups.
- GuiMultiElement now inherits from IterableAsserterMixin to support size-related assertions.
- Internal logging clean-up.
- Network recording support for Firefox
- Contextual Logging
- Improved logic to allow setting contexts in a reference config.
- A logging call marked with contexts does not get logged by default unless it has an intersection of atleast one context with ArjunaOption.LOG_ALLOWED_CONTEXTS in the reference config for the run.
- Introduced 3 built-in contexts: report, resource, request.
- More contextual logs will be introduced.

1.0.14

Network capture support for Web UI testing, heavily improved data references and introduction of configuration stages are the primary themes in this release:

Network packet capture in Web UI tests
- BrowserMob Proxy integration
- Reference Config level options:
- ArjunaOption.BROWSER_NETWORK_RECORDER_ENABLED enables network recording. Default is False.
- Any config level options:
- ArjunaOption.BROWSER_NETWORK_RECORDER_AUTOMATIC instructs to GuiApp to start recording after browser is launched. Also, each GuiPage sets current title to its name. Default is False.
- The packets are captured and shown in HTML Reports just like Web service network packets.
Reporting
- Reference Config level options:
- ArjunaOption.REPORT_NETWORK_ALWAYS - Network info will be included even for passed tests.
- ArjunaOption.REPORT_SCREENSHOTS_ALWAYS - Screenshots will be included even for passed tests.
- Any config level options:
- ArjunaOption.REPORT_NETWORK_FILTER - Only requests with responses with content with html/json/xml are included in report.
Configuration
- Configuration stages defined as Default/Reference/CLI/Coded.
- DisallowedArjunaOptionError exception is raised if one attempts to set a config option at a level where it is not allowed.
Network Recorder Protocol
- request spaces can contain `network_recorder` attribute.
- A Network Recorder should have record/register methods. For Web UI automation, it can be set to `<app_object>.network_recorder`.
- The recorded traffic is automatically registered in case of errors in fixture/test.
- A `record` call also registers existing recording if any.
Data References
- Support bucket query which is equivalent to Arjuna.get_data_ref(bucket_name)
- Support for iterality in Contextual and Indexed References.
- Support for context/index based value retrieval like a dict/list syntax.
- Added documentation for these feature enhancements.
- Added example/test code.
CIStringDict
- Retains case-insensitive inquiries
- When all keys or items or raw object is retrieved, original casing of keys is retained.
DataRecord
- .named_values retains original casing of keys.
HTML Reporting
- JS/HTML now in res files.
- Collapsible redirected network packets based on Stefan's sample code submission.

1.0.13

This build adds YAML based Data References support and refined Yaml objects, along with other refinement fixes and improvement docs.

Data References
- Added support for Yaml based contextual as well as indexed data references.
Yaml
- Implemented iter logic in YamlList and YamlDict
- YamlDict and YamlList support == operator.
- Simplified Yaml API as aligned with other format parsers for consistency.
HTML Reporting
- Log height changed to 500px.
- Modal window dimensions chnaged to smaller.
Docs
- Added doc comments for yaml module as it is in TPI.
- Added docs for indexed data references. Improved doc for contextual data references.
- Added doc for YAML in text parsing.
- track within Arjuna uses `trace` level for most classes.

Page 4 of 5

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.