def app_for_test(mocker): import flask from flask import Blueprint from app import init_app from app.authentication.auth import AuthError from app.v2.errors import BadRequestError, JobIncompleteError, TooManyRequestsError app = flask.Flask(__name__) app.config["TESTING"] = True init_app(app) from app import statsd_client statsd_client.init_app(app) from app.v2.errors import register_errors blue = Blueprint("v2_under_test", __name__, url_prefix="/v2/under_test") @blue.route("/raise_auth_error", methods=["GET"]) def raising_auth_error(): raise AuthError("some message", 403) @blue.route("/raise_bad_request", methods=["GET"]) def raising_bad_request(): raise BadRequestError(message="you forgot the thing") @blue.route("/raise_too_many_requests", methods=["GET"]) def raising_too_many_requests(): raise TooManyRequestsError(sending_limit="452") @blue.route("/raise_validation_error", methods=["GET"]) def raising_validation_error(): from app.schema_validation import validate from app.v2.notifications.notification_schemas import post_sms_request validate({"template_id": "bad_uuid"}, post_sms_request) @blue.route("raise_data_error", methods=["GET"]) def raising_data_error(): raise DataError("There was a db problem", "params", "orig") @blue.route("raise_job_incomplete_error", methods=["GET"]) def raising_job_incomplete_error(): raise JobIncompleteError("Raising job incomplete error") @blue.route("raise_exception", methods=["GET"]) def raising_exception(): raise AssertionError("Raising any old exception") register_errors(blue) app.register_blueprint(blue) return app
def app_for_test(mocker): import flask from flask import Blueprint from app.authentication.auth import AuthError from app.v2.errors import BadRequestError, TooManyRequestsError app = flask.Flask(__name__) app.config['TESTING'] = True from app.v2.errors import register_errors blue = Blueprint("v2_under_test", __name__, url_prefix='/v2/under_test') @blue.route("/raise_auth_error", methods=["GET"]) def raising_auth_error(): raise AuthError("some message", 403) @blue.route("/raise_bad_request", methods=["GET"]) def raising_bad_request(): raise BadRequestError(message="you forgot the thing") @blue.route("/raise_too_many_requests", methods=["GET"]) def raising_too_many_requests(): raise TooManyRequestsError(sending_limit="452") @blue.route("/raise_validation_error", methods=["GET"]) def raising_validation_error(): from app.schema_validation import validate from app.v2.notifications.notification_schemas import post_sms_request validate({"template_id": "bad_uuid"}, post_sms_request) @blue.route("raise_data_error", methods=["GET"]) def raising_data_error(): raise DataError("There was a db problem", "params", "orig") @blue.route("raise_exception", methods=["GET"]) def raising_exception(): raise AssertionError("Raising any old exception") register_errors(blue) app.register_blueprint(blue) return app
from flask import Blueprint from app.v2.errors import register_errors v2_template_blueprint = Blueprint("v2_template", __name__, url_prefix="/v2/template") register_errors(v2_template_blueprint)
from functools import wraps from flask import Blueprint, current_app, jsonify, request from app.celery.tasks import ( record_daily_sorted_counts, update_letter_notifications_statuses, ) from app.config import QueueNames from app.notifications.utils import autoconfirm_subscription from app.schema_validation import validate from app.v2.errors import register_errors letter_callback_blueprint = Blueprint("notifications_letter_callback", __name__) register_errors(letter_callback_blueprint) dvla_sns_callback_schema = { "$schema": "http://json-schema.org/draft-04/schema#", "description": "sns callback received on s3 update", "type": "object", "title": "dvla internal sns callback", "properties": { "Type": { "enum": ["Notification", "SubscriptionConfirmation"] }, "MessageId": { "type": "string" }, "Message": { "type": ["string", "object"]
from flask import Blueprint, jsonify, request from app.celery.tasks import process_returned_letters_list from app.config import QueueNames from app.letters.letter_schemas import letter_references from app.schema_validation import validate from app.v2.errors import register_errors letter_job = Blueprint("letter-job", __name__) register_errors(letter_job) @letter_job.route("/letters/returned", methods=["POST"]) def create_process_returned_letters_job(): references = validate(request.get_json(), letter_references) process_returned_letters_list.apply_async([references["references"]], queue=QueueNames.DATABASE) return jsonify(references=references["references"]), 200
from flask import Blueprint from app.v2.errors import register_errors v2_inbound_sms_blueprint = Blueprint("v2_inbound_sms", __name__, url_prefix='/v2/received-text-messages') register_errors(v2_inbound_sms_blueprint)
from flask import Blueprint from app.v2.errors import register_errors v2_notification_blueprint = Blueprint("v2_notifications", __name__, url_prefix='/v2/notifications') register_errors(v2_notification_blueprint)
from flask import Blueprint from app.v2.errors import register_errors notification_blueprint = Blueprint("v2_notifications", __name__, url_prefix='/v2/notifications') register_errors(notification_blueprint)
from flask import Blueprint from app.v2.errors import register_errors v2_broadcast_blueprint = Blueprint( "v2_broadcast_blueprint", __name__, url_prefix='/v2/broadcast', ) register_errors(v2_broadcast_blueprint)