Skip to main content

flask handlers for im_futuretask, for Google App Engine, Python standard environment

Project description

# im_futuretest_flask These are the flask utilities for the im_futuretest library. If your project uses flask, this is the package you want.

[![Build Status](https://travis-ci.org/emlynoregan/im_futuretest_flask.svg?branch=master)](https://travis-ci.org/emlynoregan/im_futuretest_flask)

## Install

Use the python package for this library. You can find the package online [here](https://pypi.org/project/im-futuretest-flask/).

Change to your Python App Engine project’s root folder and do the following:

> pip install im_futuretest_flask –target lib

Or add it to your requirements.txt. You’ll also need to set up vendoring, see [app engine vendoring instructions here](https://cloud.google.com/appengine/docs/python/tools/using-libraries-python-27).

## Configuring im_futuretest_flask

This package provides functions that register flask handler functions for im_futuretest_flask, both for its api and its ui.

To get your tests running properly, you should register these handlers in your main app (wherever your main flask app is constructed). Doing this ensures that your tests have exactly the same code loaded as the code they’re testing would have when being used normally, ie: no dependency hell.

### app.yaml

The futuretest handlers all have routes of the form: /futuretest/XXX (where XXX may include more levels of pathing)

Say you already have an app.yaml rule which pushes all routes to your main app, say main.py, as follows:

handlers:
  • url: * script: main.app

Then this will work for futuretest without any modification.

If things are a little messy, you can just add this somewhere early in app.yaml:

  • url: /futuretest/* script: main.app login: admin

This will direct all futuretest routes to the “app” flask application constructed in main.py. Obviously modify this as needed.

Also note the requirement for the user to be an admin of your project. Futuretest is designed to run potentially long running and expensive tests; it’s best not to open that up to all comers!

### main.py

Now traffic is going to the app constructed in main.py.

Next we need to register the futuretest flask handlers with your app.

Do it like this:

from flask import Flask from flaskhandlers import register_tests_api … other imports …

app = Flask(__name__) # creating your app

… add other handlers to your app, etc …

register_futuretest_handlers(app) # this adds IM Future Test’s handlers

… do more stuff with app …

ie: just call register_futuretest_handlers(app) somewhere in main.py

### Accessing the UI

Go to the url

http(s)://<yourdomain>/futuretest/ui

and you’ll see the UI:

![IM Future Test screenshot](http://i433.photobucket.com/albums/qq59/emlynoregan/im_futuretest.png “IM Future Test screenshot”)

Project details


Download files

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

Source Distribution

im_futuretest_flask-0.1.3.tar.gz (3.8 kB view details)

Uploaded Source

Built Distribution

im_futuretest_flask-0.1.3-py2.py3-none-any.whl (6.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file im_futuretest_flask-0.1.3.tar.gz.

File metadata

File hashes

Hashes for im_futuretest_flask-0.1.3.tar.gz
Algorithm Hash digest
SHA256 ad5c61fdee10af90b0d37b63bdd9352f9162dcabab9dbd9f739e28fdf4993e2f
MD5 a88e2edf5cb9d42818cf024bef45b480
BLAKE2b-256 abfb79329f8452e30bc15c90cd1ff3c4b0000ddb3d881a3ba34e2bed3c614704

See more details on using hashes here.

File details

Details for the file im_futuretest_flask-0.1.3-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for im_futuretest_flask-0.1.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 778b94fcba13c2d39c5ff5f852cfc9d186d6cb30face55d075f03748b054df10
MD5 a02f5191fc724288f58c070f460505bf
BLAKE2b-256 a00b4f5f4e2bfbcf7c4ab96e171fbde803ebf274a23e0ea2c10372007c8bec5b

See more details on using hashes here.

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