示例#1
0
def test_flags_init_app():
    """Ensure that extension can be initialized."""
    app = Flask(__name__)

    with app.app_context():
        flags = Flags()
        flags.init_app(app)
    assert app.extensions['featureflags']
示例#2
0
def test_flags_init_app_no_key_dev():
    """Assert that the extension is setup with a KEY, but in non-production mode."""
    app = Flask(__name__)
    app.config['LD_SDK_KEY'] = None
    app.env = 'development'

    with app.app_context():
        flags = Flags()
        flags.init_app(app)
    assert app.extensions['featureflags']
示例#3
0
def test_flags_init_app_production():
    """Ensure that extension can be initialized."""
    app = Flask(__name__)
    app.env = 'production'
    app.config['LD_SDK_KEY'] = 'https://no.flag/avail'

    with app.app_context():
        flags = Flags()
        flags.init_app(app)
    assert app.extensions['featureflags']
示例#4
0
def test_flags_bool_no_key_prod():
    """Assert that prod with no key initializes, but does not setup the extension."""
    app = Flask(__name__)
    app.config['LD_SDK_KEY'] = None
    app.env = 'production'

    with app.app_context():
        flags = Flags()
        flags.init_app(app)
        on = flags.is_on('bool-flag')

    assert not on
示例#5
0
def test_flags_init_app_no_key_prod():
    """Assert that prod with no key initializes, but does not setup the extension."""
    app = Flask(__name__)
    app.config['LD_SDK_KEY'] = None
    app.env = 'production'

    with app.app_context():
        flags = Flags()
        flags.init_app(app)
        with pytest.raises(KeyError):
            client = app.extensions['featureflags']
            assert not client
示例#6
0
def test_flags_bool():
    """Assert that a boolean (True) is returned, when using the local Flag.json file."""
    app = Flask(__name__)
    app.env = 'development'
    app.config['LD_SDK_KEY'] = 'https://no.flag/avail'

    with app.app_context():
        flags = Flags()
        flags.init_app(app)
        flag_on = flags.is_on('bool-flag')

        assert flag_on