Skip to main content

About

testing.elasticsearch automatically setups a elasticsearch instance in a temporary directory, and destroys it after testing.

https://travis-ci.org/tk0miya/testing.elasticsearch.svg?branch=master https://coveralls.io/repos/tk0miya/testing.elasticsearch/badge.png?branch=master https://codeclimate.com/github/tk0miya/testing.elasticsearch/badges/gpa.svg

Install

Use pip:

$ pip install testing.elasticsearch2

And testing.elasticsearch2 requires Elasticsearch server in your PATH.

Usage

Create Elasticsearch instance using testing.elasticsearch.Elasticsearch:

import testing.elasticsearch
from sqlalchemy import create_engine

# Lanuch new Elasticsearch server
with testing.elasticsearch.Elasticsearch() as elasticsearch:
    # connect to Elasticsearch (using elasticsearch-py)
    es = Elasticsearch(**elasticsearch.dsn())

    #
    # do any tests using Elasticsearch...
    #

# Elasticsearch server is terminated here

testing.elasticsearch.Elasticsearch generates temporary config files and data directories. On deleting Elasticsearch object, it terminates Elasticsearch instance and removes temporary files and directories.

If you want a database including indexes and any fixtures for your apps, use copy_data_from keyword:

# uses a copy of specified data directory of Elasticsearch.
elasticsearch = testing.elasticsearch.Elasticsearch(copy_data_from='/path/to/your/index')

For example, you can setup new Elasticsearch server for each testcases on setUp() method:

import unittest
import testing.elasticsearch

class MyTestCase(unittest.TestCase):
    def setUp(self):
        self.elasticsearch = testing.elasticsearch.Elasticsearch()

    def tearDown(self):
        self.elasticsearch.stop()

Requirements

  • Python 2.7, 3.3, 3.4, 3.5

License

Apache License 2.0

History

1.0.0 (2016-08-20)

  • Drop python 2.6, 3.2 support

  • Depend on testing.common.database >= 2.0.0

  • Set booting timeout to 20sec

  • Fix bugs:

    • #1: find_elasticsearch_yaml_path() does not refer elasticsearch_home argument

    • #2: Make ES_PATH absolute

0.9.1 (2016-02-04)

  • Depend on testing.common.database package

0.9.0 (2015-12-13)

  • First release

Metadata

Release files for testing.elasticsearch2 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for testing.elasticsearch2 1.0.0
File Size Uploaded Provenance
testing.elasticsearch2-1.0.0.tar.gz 9.9 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for testing.elasticsearch2 1.0.0
File Interpreter ABI Platform
testing.elasticsearch2-1.0.0-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 17.2 kB

Release files / testing.elasticsearch2-1.0.0.tar.gz

Download URL testing.elasticsearch2-1.0.0.tar.gz
Size 9.9 kB
Tags Source
SHA-256 checksum
How to use checksums
c085e64251c9df88191e556d5ba43816f6bfa44dcc3ac37f8fdecbf07caee593
BLAKE2b-256 checksum
How to use checksums
67ca3172ca5eb5ac8f0f1533f76024acebef1204258649be5f1e19f47f4a6162
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / testing.elasticsearch2-1.0.0-py2.py3-none-any.whl

Download URL testing.elasticsearch2-1.0.0-py2.py3-none-any.whl
Size 7.3 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
2d31e1e702b034b79bafa652d1d254958ea5f1dbb3adb035ddadef26f0615f93
BLAKE2b-256 checksum
How to use checksums
c4826378ee5d9c5041e495a565282a3477c58a0002d0527a657fc5353c2df320
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for testing.elasticsearch2 1.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page