{ "info": { "author": "Emlyn O'Regan", "author_email": "emlynoregan@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: MacOS :: MacOS X", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: System :: Distributed Computing" ], "description": "# im_futuretest_flask\nThese are the flask utilities for the im_futuretest library. If your project uses flask, this is the package you want.\n\n[![Build Status](https://travis-ci.org/emlynoregan/im_futuretest_flask.svg?branch=master)](https://travis-ci.org/emlynoregan/im_futuretest_flask)\n\n## Install \n\nUse the python package for this library. You can find the package online [here](https://pypi.org/project/im-futuretest-flask/).\n\nChange to your Python App Engine project's root folder and do the following:\n\n> pip install im_futuretest_flask --target lib\n\nOr 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).\n\n## Configuring im_futuretest_flask\n\nThis package provides functions that register flask handler functions for im_futuretest_flask, both for its api and its ui.\n\nTo get your tests running properly, you should register these handlers in your main app (wherever your main flask app is constructed). Doing this \nensures 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.\n\n### app.yaml\n\nThe futuretest handlers all have routes of the form:\n/futuretest/XXX\n(where XXX may include more levels of pathing)\n\nSay you already have an app.yaml rule which pushes all routes to your main app, say main.py, as follows:\n\n\thandlers:\n\t\t- url: *\n\t\t script: main.app\n\nThen this will work for futuretest without any modification.\n\nIf things are a little messy, you can just add this somewhere early in app.yaml:\n\n\t- url: /futuretest/*\n\t script: main.app\n\t login: admin\n\nThis will direct all futuretest routes to the \"app\" flask application constructed in main.py. Obviously modify this as needed.\n\nAlso note the requirement for the user to be an admin of your project. Futuretest is designed to run potentially long running and expensive \ntests; it's best not to open that up to all comers!\n\n### main.py\n\nNow traffic is going to the app constructed in main.py.\n\nNext we need to register the futuretest flask handlers with your app.\n\nDo it like this:\n\n\tfrom flask import Flask\n\tfrom flaskhandlers import register_tests_api\n\t... other imports ...\n\n\tapp = Flask(__name__) # creating your app\n\n\t... add other handlers to your app, etc ...\n\n\tregister_futuretest_handlers(app) # this adds IM Future Test's handlers\n\n\t... do more stuff with app ...\n\nie: just call register_futuretest_handlers(app) somewhere in main.py\n\n### Accessing the UI\n\nGo to the url\n\n\thttp(s):///futuretest/ui\n\nand you'll see the UI:\n\n![IM Future Test screenshot](http://i433.photobucket.com/albums/qq59/emlynoregan/im_futuretest.png \"IM Future Test screenshot\")\n\n\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/emlynoregan/im_futuretest_flask", "keywords": "", "license": "../LICENSE.txt", "maintainer": "", "maintainer_email": "", "name": "im-futuretest-flask", "package_url": "https://pypi.org/project/im-futuretest-flask/", "platform": "", "project_url": "https://pypi.org/project/im-futuretest-flask/", "project_urls": { "Homepage": "https://github.com/emlynoregan/im_futuretest_flask" }, "release_url": "https://pypi.org/project/im-futuretest-flask/0.1.3/", "requires_dist": [ "im-futuretest (>=0.1.3)", "flask" ], "requires_python": "", "summary": "flask handlers for im_futuretask, for Google App Engine, Python standard environment", "version": "0.1.3" }, "last_serial": 3819801, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "1c76102d00b1df1d58d7652cca6f6866", "sha256": "c4389142843b2f49e18b03b0d7aa4c1290df1396bd273d610671fc2418b5fda5" }, "downloads": -1, "filename": "im_futuretest_flask-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "1c76102d00b1df1d58d7652cca6f6866", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5548, "upload_time": "2018-02-25T00:23:40", "url": "https://files.pythonhosted.org/packages/39/bd/5953754fa6469e0efa31052ea58f547aab96acf705b7463056b1f464ba42/im_futuretest_flask-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a059125caf95bf97254754ac33c02e30", "sha256": "489ea8a63ab0e37ea35838d4ebd406b9ab0ea3396602aac1490f83ff9d5278ac" }, "downloads": -1, "filename": "im_futuretest_flask-0.1.0.tar.gz", "has_sig": false, "md5_digest": "a059125caf95bf97254754ac33c02e30", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3218, "upload_time": "2018-02-25T00:23:42", "url": "https://files.pythonhosted.org/packages/ff/57/0eaf37f6947ed032a6e6fab063cfb892ba0784c0b5ab0c631b002740cf5c/im_futuretest_flask-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "846aac16de06a7d303a50aa58cd47283", "sha256": "acfb1778636e243159c92351e82d665064ef40266c4448c007651d037fcc6112" }, "downloads": -1, "filename": "im_futuretest_flask-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "846aac16de06a7d303a50aa58cd47283", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6238, "upload_time": "2018-02-25T00:44:07", "url": "https://files.pythonhosted.org/packages/f8/4c/3233ffebd17acb28be5dc8ea1652d461fbc414e6eb64180d68ba78fdfbcd/im_futuretest_flask-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bbed9252c535f023c239991ce88d2aa1", "sha256": "03e3324edc77efa0246d9aea27c400876a6db80ecc079f535a757205ed0f139b" }, "downloads": -1, "filename": "im_futuretest_flask-0.1.1.tar.gz", "has_sig": false, "md5_digest": "bbed9252c535f023c239991ce88d2aa1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3556, "upload_time": "2018-02-25T00:44:08", "url": "https://files.pythonhosted.org/packages/40/50/0ce779a49efad02c8bb50adee37bf8085acbd0864b3b4a438d69f0351d52/im_futuretest_flask-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "ff8aae5b43b7990d0aef7e8fea3b0bf2", "sha256": "060a7ece1a39eed1c1914b1b140e86af11523f0266c0919c400cc3da2e54ea31" }, "downloads": -1, "filename": "im_futuretest_flask-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ff8aae5b43b7990d0aef7e8fea3b0bf2", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6457, "upload_time": "2018-02-26T12:14:35", "url": "https://files.pythonhosted.org/packages/1d/da/5b8422094bdaa7f61459a3ce308d60ecff7cb43716cf2f3b538393ef962d/im_futuretest_flask-0.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8fb2274f3fb3634998cb5b848ecd612b", "sha256": "b0a4df373c0b551b01fa36cada3bfb594bff28c57b0186758efb17f2940c9ecc" }, "downloads": -1, "filename": "im_futuretest_flask-0.1.2.tar.gz", "has_sig": false, "md5_digest": "8fb2274f3fb3634998cb5b848ecd612b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3792, "upload_time": "2018-02-26T12:14:36", "url": "https://files.pythonhosted.org/packages/df/07/9320b22b47362434306fe757fa12467e9792ffe452e09acd5b8cc1edf461/im_futuretest_flask-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "a02f5191fc724288f58c070f460505bf", "sha256": "778b94fcba13c2d39c5ff5f852cfc9d186d6cb30face55d075f03748b054df10" }, "downloads": -1, "filename": "im_futuretest_flask-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a02f5191fc724288f58c070f460505bf", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6423, "upload_time": "2018-04-30T04:36:57", "url": "https://files.pythonhosted.org/packages/a0/0b/4f5f4e2bfbcf7c4ab96e171fbde803ebf274a23e0ea2c10372007c8bec5b/im_futuretest_flask-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a88e2edf5cb9d42818cf024bef45b480", "sha256": "ad5c61fdee10af90b0d37b63bdd9352f9162dcabab9dbd9f739e28fdf4993e2f" }, "downloads": -1, "filename": "im_futuretest_flask-0.1.3.tar.gz", "has_sig": false, "md5_digest": "a88e2edf5cb9d42818cf024bef45b480", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3788, "upload_time": "2018-04-30T04:36:57", "url": "https://files.pythonhosted.org/packages/ab/fb/79329f8452e30bc15c90cd1ff3c4b0000ddb3d881a3ba34e2bed3c614704/im_futuretest_flask-0.1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a02f5191fc724288f58c070f460505bf", "sha256": "778b94fcba13c2d39c5ff5f852cfc9d186d6cb30face55d075f03748b054df10" }, "downloads": -1, "filename": "im_futuretest_flask-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a02f5191fc724288f58c070f460505bf", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6423, "upload_time": "2018-04-30T04:36:57", "url": "https://files.pythonhosted.org/packages/a0/0b/4f5f4e2bfbcf7c4ab96e171fbde803ebf274a23e0ea2c10372007c8bec5b/im_futuretest_flask-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a88e2edf5cb9d42818cf024bef45b480", "sha256": "ad5c61fdee10af90b0d37b63bdd9352f9162dcabab9dbd9f739e28fdf4993e2f" }, "downloads": -1, "filename": "im_futuretest_flask-0.1.3.tar.gz", "has_sig": false, "md5_digest": "a88e2edf5cb9d42818cf024bef45b480", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3788, "upload_time": "2018-04-30T04:36:57", "url": "https://files.pythonhosted.org/packages/ab/fb/79329f8452e30bc15c90cd1ff3c4b0000ddb3d881a3ba34e2bed3c614704/im_futuretest_flask-0.1.3.tar.gz" } ] }