Skip to main content

Task Object Storage package.

Project description

Transaction management for Robot Framework RPA using MongoDB.

Included are two packages: tos and TOSLibrary. The former is the actual task object storage implementation written in pure Python, without any Robot Framework dependencies. TOSLibrary is a Robot Framework keyword library built on top of tos. It is built as a lightweight dynamic proxy library, so all the changes in tos are immediately available in TOSLibrary keywords.

Quickstart guide

Requirements

  • MongoDB (version >4)

  • Python (version >3.6)

Installation

Latest stable version from PyPi with pip:

pip install task-object-storage

Latest development version from PyPi:

pip install task-object-storage --pre

Usage

You can import TOSLibrary into your Robot Framework suite with

*** Settings ***
Library  TOSLibrary  ${db_server}:${db_port}  ${db_name}

If you are using authentication in MongoDB, you can pass credentials:

*** Settings ***
Library  TOSLibrary  ${db_server}:${db_port}  ${db_name}  ${db_user}  ${db_passw}

You can also add a suffix to the collection name. By passing a valid collection_suffix argument to TOSLibrary, you can create a collection with a name task_objects.your_suffix

*** Settings ***
Library  TOSLibrary  ${db_server}:${db_port}  ${db_name}  ${db_user}  ${db_passw}  ${collection_suffix}

Now the keywords are callable from Robot Framework.

This library instance can also be accessed inside Python keywords with

from robot.libraries.BuiltIn import BuiltIn

toslib = BuiltIn().get_library_instance("TOSLibrary")
toslib.keyword_name

The keywords can be also called with:

BuiltIn().run_keyword("<keyword name>")

To use task object storage in Python without any Robot Framework dependencies you should use tos package directly:

from tos.task_object_storage import TaskObjectStorage

tos = TaskObjectStorage(
        db_server=server,
        db_name=db_name,
        db_user=db_user,
        db_passw=db_passw,
)

If db_user and db_passw are empty strings, TaskObjectStorage will default to using no authentication.

Available keywords

See the full API documentation.

For developers

Package and deploy code with

scripts/build_and_deploy_to_pypi.sh

You can also install the whl package found in the dist directory with

pip install <package-name>.whl

or put inside requirements.txt:

file:C:/path/to/<package-name>.whl  # on windows
file:/path/to/<package-name>.whl  # on linux

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

task_object_storage-1.0.3a2-py3-none-any.whl (20.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page