Skip to main content

Sixpack

https://travis-ci.org/seatgeek/sixpack-py.svg

Python client library for SeatGeak’s Sixpack ab testing framework.

Installation

First install in your virtual environment:

$ pip install sixpack-client

Usage

Basic example:

from sixpack.sixpack import Session

session = Session()

# Participate in a test (creates the test if necessary)
session.participate("new-test", ["alternative-1", "alternative-2"])

# Convert
session.convert("new-test")

Each session has a client_id associated with it that must be preserved across requests. Here’s what the first request might look like:

session = Session()
resp = session.participate("new-test", ["alternative-1", "alternative-2"])
set_cookie_in_your_web_framework("sixpack-id", session.client_id)

You can then make decisions in your application based on resp[‘alternative’][‘name’]:

session = Session()
resp = session.participate("new-test", ["alt-1", "alt-2"])
if resp["alternative"]["name"] == "alt-1":
    set_variable_in_view("new-test-alternative", "alt-1")

For future requests, create the Session using the client_id stored in the cookie:

client_id = get_cookie_from_web_framework("sixpack-id")
session = Session(client_id=client_id)
session.convert("new-test")

Sessions can take an optional options dictionary that takes host and timeout as keys. This allows you to customize Sixpack’s location.:

options = {'host': 'http://mysixpacklocation.com'}
session = Session(client_id="123", options=options)

If Sixpack is unreachable or other errors occur, sixpack-py will provide the control alternative.

Contributing

  1. Fork it

  2. Create your feature branch (git checkout -b my-new-feature)

  3. Commit your changes (git commit -am ‘Added some feature’)

  4. Push to the branch (git push origin my-new-feature)

  5. Create new Pull Request

Metadata

Release files for Sixpack-client 1.2.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 Sixpack-client 1.2.0
File Size Uploaded
Sixpack-client-1.2.0.tar.gz 5.1 kB Details

Release files / Sixpack-client-1.2.0.tar.gz

Download URL Sixpack-client-1.2.0.tar.gz
Size 5.1 kB
Tags Source
SHA-256 checksum
How to use checksums
bd0bb616af15dea5324c39486bae1b66a6a3a7f269b874f5283449a2e23e219f
BLAKE2b-256 checksum
How to use checksums
a868a50c79ee93da1d9122fb97671664176ca20b9ef1c3e47a1860b316e14034
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.2.0 This release

1 release file

1.1.1

1 release file

1.1.0

1 release file

1.0.0

1 release file

0.3.0

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1.0

1 release file

0.0.4

1 release file

0.0.3

1 release file

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