def test_proper_error_on_missing_resource_listing(): with pytest.raises(ResourceListingNotFoundError) as exc: register_api_doc_endpoints( build_config('tests/sample_schemas/missing_resource_listing/'), ) assert ('tests/sample_schemas/missing_resource_listing/api_docs.json' in str(exc)) assert 'must be named {0}'.format(API_DOCS_FILENAME) in str(exc)
def test_proper_error_on_missing_api_declaration(): with pytest.raises(ApiDeclarationNotFoundError) as exc: register_api_doc_endpoints( build_config('tests/sample_schemas/missing_api_declaration/'), ) assert ( 'tests/sample_schemas/missing_api_declaration/missing.json' in str(exc) )
def test_proper_error_on_missing_resource_listing(): with pytest.raises(ResourceListingNotFoundError) as exc: register_api_doc_endpoints( build_config( 'tests/sample_schemas/missing_resource_listing/api_docs.json'), ) assert( 'tests/sample_schemas/missing_resource_listing/' in str(exc) ) assert 'must be named {0}'.format(API_DOCS_FILENAME) in str(exc)
def includeme(config): """ :type config: :class:`pyramid.config.Configurator` """ settings = config.registry.settings swagger_versions = get_swagger_versions(settings) # for rendering /swagger.yaml config.add_renderer( 'yaml', 'pyramid_swagger.api.YamlRendererFactory', ) # Add the SwaggerSchema to settings to make it available to the validation # tween and `register_api_doc_endpoints` settings['pyramid_swagger.schema12'] = None settings['pyramid_swagger.schema20'] = None # Store under two keys so that 1.2 and 2.0 can co-exist. if SWAGGER_12 in swagger_versions: settings['pyramid_swagger.schema12'] = get_swagger_schema(settings) if SWAGGER_20 in swagger_versions: settings['pyramid_swagger.schema20'] = get_swagger_spec(settings) config.add_tween("pyramid_swagger.tween.validation_tween_factory", under=pyramid.tweens.EXCVIEW) config.add_renderer('pyramid_swagger', PyramidSwaggerRendererFactory()) if settings.get('pyramid_swagger.enable_api_doc_views', True): if SWAGGER_12 in swagger_versions: register_api_doc_endpoints( config, settings['pyramid_swagger.schema12'].get_api_doc_endpoints()) if SWAGGER_20 in swagger_versions: register_api_doc_endpoints( config, build_swagger_20_swagger_schema_views(config), base_path=settings.get('pyramid_swagger.base_path_api_docs', ''))
def includeme(config): """ :type config: :class:`pyramid.config.Configurator` """ settings = config.registry.settings swagger_versions = get_swagger_versions(settings) # for rendering /swagger.yaml config.add_renderer( 'yaml', 'pyramid_swagger.api.YamlRendererFactory', ) # Add the SwaggerSchema to settings to make it available to the validation # tween and `register_api_doc_endpoints` settings['pyramid_swagger.schema12'] = None settings['pyramid_swagger.schema20'] = None # Store under two keys so that 1.2 and 2.0 can co-exist. if SWAGGER_12 in swagger_versions: settings['pyramid_swagger.schema12'] = get_swagger_schema(settings) if SWAGGER_20 in swagger_versions: settings['pyramid_swagger.schema20'] = get_swagger_spec(settings) config.add_tween( "pyramid_swagger.tween.validation_tween_factory", under=pyramid.tweens.EXCVIEW ) config.add_renderer('pyramid_swagger', PyramidSwaggerRendererFactory()) if settings.get('pyramid_swagger.enable_api_doc_views', True): if SWAGGER_12 in swagger_versions: register_api_doc_endpoints( config, settings['pyramid_swagger.schema12'].get_api_doc_endpoints()) if SWAGGER_20 in swagger_versions: register_api_doc_endpoints( config, build_swagger_20_swagger_schema_views(config), base_path=settings.get('pyramid_swagger.base_path_api_docs', ''))