def test_default_expired_token_callback(app):
    jwt_manager = JWTManager(app)

    with app.test_request_context():
        result = jwt_manager._expired_token_callback()
        status_code, data = _parse_callback(result)

        assert status_code == 401
        assert data == {'msg': 'Token has expired'}
def test_custom_expired_token_callback(app):
    jwt_manager = JWTManager(app)

    @jwt_manager.expired_token_loader
    def custom():
        return jsonify({"foo": "bar"}), 200

    with app.test_request_context():
        result = jwt_manager._expired_token_callback()
        status_code, data = _parse_callback(result)

        assert status_code == 200
        assert data == {'foo': 'bar'}