def test_flask_extension_jinja_env_static_prefix(mocked_flask_app): mocked_flask_app.static_url_path = '/static-url' mocked_flask_app.config = dict() ext = JAC() ext.init_app(mocked_flask_app) assert mocked_flask_app.jinja_env.compressor_static_prefix == '/static-url'
def test_flask_extension_jinja_env_compressor_output_dir(mocked_flask_app): mocked_flask_app.static_folder = '/static/folder' mocked_flask_app.config = dict() ext = JAC() ext.init_app(mocked_flask_app) assert mocked_flask_app.jinja_env.compressor_output_dir == '/static/folder'
def test_flask_extension_jinja_env_static_prefix(mocked_flask_app): mocked_flask_app.static_folder = '/static/folder' mocked_flask_app.static_url_path = '/static-url' mocked_flask_app.config = dict() ext = JAC() ext.init_app(mocked_flask_app) assert mocked_flask_app.jinja_env.compressor_output_dir == '/static/folder/sdist' assert mocked_flask_app.jinja_env.compressor_static_prefix == '/static-url/sdist'
def create_app(): app.config.from_object(config) db.init_app(app) JAC(app) from app.main import main as main_blueprint app.register_blueprint(main_blueprint) from app.api import api as api_blueprint app.register_blueprint(api_blueprint) from app.filter import app_filter as app_filter_blueprint app.register_blueprint(app_filter_blueprint) return app
def test_flask_extension_find_static(): app = Flask(__name__) # Avoid breaking static_finder when an url is registered with an endpoint which does not match with the blueprint app.add_url_rule('/some/url', 'wrong.blueprint_url') JAC(app) find = static_finder(app) with TempDir.with_context() as temp_dir: static_folder = temp_dir.name app.static_folder = static_folder static_file = os.path.join(static_folder, 'some.css') with open(static_file, 'w') as f: f.write('html {}') # This should be findable even if some urls' endpoints use broken names assert find('/static/some.css') == static_file
def test_flask_extension_jinja_env_source_dirs(mocked_flask_app): ext = JAC() ext.init_app(mocked_flask_app) mocked_flask_app.jinja_env.compressor_source_dirs == static_finder(mocked_flask_app)
def test_flask_extension_jinja_env_add_extension(mocked_flask_app): ext = JAC() ext.init_app(mocked_flask_app) mocked_flask_app.jinja_env.add_extension.assert_called_once_with('jac.CompilerExtension')
def test_flask_extension_jinja_env_source_dirs(mocked_flask_app): ext = JAC() ext.init_app(mocked_flask_app) mocked_flask_app.jinja_env.compressor_source_dirs == static_finder( mocked_flask_app)
def test_flask_extension_jinja_env_add_extension(mocked_flask_app): ext = JAC() ext.init_app(mocked_flask_app) mocked_flask_app.jinja_env.add_extension.assert_called_once_with( 'jac.CompressorExtension')
def test_flask_extension_lazy_init(mocked_flask_app): """Make sure we save then app when initializing Flask with app factory.""" ext = JAC() assert ext.app is None ext.init_app(mocked_flask_app) assert ext.app == mocked_flask_app
def test_flask_extension_init_self_app(mocked_flask_app): ext = JAC(mocked_flask_app) assert ext.app is mocked_flask_app
from flask_bootstrap import Bootstrap from flask_wtf.csrf import CSRFProtect from jinja2 import Environment as EnvJinja from celery.backends.redis import RedisBackend from slugify import slugify, Slugify, UniqueSlugify from flask_debugtoolbar import DebugToolbarExtension from flask_principal import Principal, Permission, RoleNeed # Static Admin for flask application admin = Admin(name='Evrasia-Pharm', template_mode='bootstrap3') # For creating jinja filters inside template (For interaction between Front-end and Back-end) environment = EnvJinja() # For allowing compression inside template jac = JAC() # These are the main configurations for application login system login_manager = LoginManager() # URL to redirect if login needed login_manager.login_view = 'auth.login' # The strength of session protection login_manager.session_protection = "strong" # A message that will appear if the user entered a not authorized page login_manager.login_message = u"Пожалуйста, войдите, чтобы получить доступ к этой странице." # The main category for styling the alert inside template, [success, warning, danger, info] login_manager.login_message_category = "warning"
from flask import Flask, render_template, redirect, url_for, json, request, make_response, jsonify # from dateutil.parser import parse from key import key import requests import json import urllib from jac.contrib.flask import JAC app = Flask(__name__) app.config['COMPRESSOR_DEBUG'] = app.config.get('DEBUG') app.config['COMPRESSOR_OUTPUT_DIR'] = './static' app.config['COMPRESSOR_STATIC_PREFIX'] = '/static' jac = JAC(app) # shared stuff params = {'api_key': key} companies = { 'Dreamworks Animation SKG': '521', 'Twentieth Century Fox Film Corp.': '25', 'Fox Searchlight Pictures': '43', 'Fox 2000 Films': '711', 'STX Entertainment': '47729' } reverseLookup = { '521': 'Dreamworks Animation SKG', '25': 'Twentieth Century Fox Film Corp.', '43': 'Fox Searchlight Pictures', '711': 'Fox 2000 Films', '47729': 'STX Entertainment' }