mirror of
https://github.com/webrecorder/pywb.git
synced 2025-03-24 06:59:52 +01:00
refactor: rename pywb.core -> pywb.webapp
move perms/test/test_perms_policy -> tests/perms_fixture for rules file, use single DEFAULT_RULES_FILE import
This commit is contained in:
parent
3aa4a4da7a
commit
b0b0adb043
@ -1,7 +1,7 @@
|
|||||||
from pywb.framework.wsgi_wrappers import init_app, start_wsgi_server
|
from pywb.framework.wsgi_wrappers import init_app, start_wsgi_server
|
||||||
|
|
||||||
#from pywb.core.cdx_api_handler import create_cdx_server_app
|
#from pywb.core.cdx_api_handler import create_cdx_server_app
|
||||||
from pywb.core.pywb_init import create_cdx_server_app
|
from pywb.webapp.pywb_init import create_cdx_server_app
|
||||||
|
|
||||||
#=================================================================
|
#=================================================================
|
||||||
# init cdx server app
|
# init cdx server app
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
from pywb.framework.wsgi_wrappers import init_app, start_wsgi_server
|
from pywb.framework.wsgi_wrappers import init_app, start_wsgi_server
|
||||||
from pywb.core.pywb_init import create_wb_router
|
from pywb.webapp.pywb_init import create_wb_router
|
||||||
|
|
||||||
#=================================================================
|
#=================================================================
|
||||||
# init pywb app
|
# init pywb app
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
from pywb.apps.cdx_server import application
|
from pywb.apps.cdx_server import application
|
||||||
from pywb.cdx.cdxserver import CDXServer, RemoteCDXServer
|
from pywb.cdx.cdxserver import CDXServer, RemoteCDXServer
|
||||||
|
|
||||||
|
from pywb.utils.dsrules import DEFAULT_RULES_FILE
|
||||||
from pywb.utils.wbexception import AccessException, NotFoundException
|
from pywb.utils.wbexception import AccessException, NotFoundException
|
||||||
from pywb.utils.wbexception import BadRequestException, WbException
|
from pywb.utils.wbexception import BadRequestException, WbException
|
||||||
|
|
||||||
@ -110,25 +111,22 @@ def test_match():
|
|||||||
assert_cdx_match(RemoteCDXServer(CDX_SERVER_URL))
|
assert_cdx_match(RemoteCDXServer(CDX_SERVER_URL))
|
||||||
|
|
||||||
|
|
||||||
# TODO: make these automatic
|
|
||||||
DEFAULT_RULES = 'pywb/rules.yaml'
|
|
||||||
|
|
||||||
def test_fuzzy_match():
|
def test_fuzzy_match():
|
||||||
# Local CDX Server
|
# Local CDX Server
|
||||||
assert_cdx_fuzzy_match(CDXServer([TEST_CDX_DIR],
|
assert_cdx_fuzzy_match(CDXServer([TEST_CDX_DIR],
|
||||||
ds_rules_file=DEFAULT_RULES))
|
ds_rules_file=DEFAULT_RULES_FILE))
|
||||||
|
|
||||||
# Remote CDX Source, Local Filtering
|
# Remote CDX Source, Local Filtering
|
||||||
# two calls to remote, first exact with 404,
|
# two calls to remote, first exact with 404,
|
||||||
# then fuzzy with 200
|
# then fuzzy with 200
|
||||||
assert_cdx_fuzzy_match(CDXServer(CDX_SERVER_URL,
|
assert_cdx_fuzzy_match(CDXServer(CDX_SERVER_URL,
|
||||||
ds_rules_file=DEFAULT_RULES),
|
ds_rules_file=DEFAULT_RULES_FILE),
|
||||||
mock_urlopen_fuzzy)
|
mock_urlopen_fuzzy)
|
||||||
|
|
||||||
# Remote CDX Query (Remote Filtering)
|
# Remote CDX Query (Remote Filtering)
|
||||||
# fuzzy match handled on remote, single response
|
# fuzzy match handled on remote, single response
|
||||||
assert_cdx_fuzzy_match(RemoteCDXServer(CDX_SERVER_URL,
|
assert_cdx_fuzzy_match(RemoteCDXServer(CDX_SERVER_URL,
|
||||||
ds_rules_file=DEFAULT_RULES))
|
ds_rules_file=DEFAULT_RULES_FILE))
|
||||||
|
|
||||||
def assert_error(func, exception):
|
def assert_error(func, exception):
|
||||||
with raises(exception):
|
with raises(exception):
|
||||||
|
@ -2,7 +2,7 @@ from pywb.cdx.cdxops import cdx_load
|
|||||||
from pywb.cdx.query import CDXQuery
|
from pywb.cdx.query import CDXQuery
|
||||||
from pywb.cdx.cdxserver import CDXServer
|
from pywb.cdx.cdxserver import CDXServer
|
||||||
from pywb.utils.wbexception import AccessException
|
from pywb.utils.wbexception import AccessException
|
||||||
from pywb.core.query_handler import QueryHandler
|
from pywb.webapp.query_handler import QueryHandler
|
||||||
|
|
||||||
from pytest import raises
|
from pytest import raises
|
||||||
|
|
||||||
|
@ -86,13 +86,13 @@ class StaticHandler(BaseHandler):
|
|||||||
#=================================================================
|
#=================================================================
|
||||||
# Debug Handlers
|
# Debug Handlers
|
||||||
#=================================================================
|
#=================================================================
|
||||||
class DebugEchoEnvHandler(BaseHandler):
|
class DebugEchoEnvHandler(BaseHandler): # pragma: no cover
|
||||||
def __call__(self, wbrequest):
|
def __call__(self, wbrequest):
|
||||||
return WbResponse.text_response(str(wbrequest.env))
|
return WbResponse.text_response(str(wbrequest.env))
|
||||||
|
|
||||||
|
|
||||||
#=================================================================
|
#=================================================================
|
||||||
class DebugEchoHandler(BaseHandler):
|
class DebugEchoHandler(BaseHandler): # pragma: no cover
|
||||||
def __call__(self, wbrequest):
|
def __call__(self, wbrequest):
|
||||||
return WbResponse.text_response(str(wbrequest))
|
return WbResponse.text_response(str(wbrequest))
|
||||||
|
|
@ -1,3 +1,5 @@
|
|||||||
|
from pywb.utils.dsrules import DEFAULT_RULES_FILE
|
||||||
|
|
||||||
from pywb.framework.archivalrouter import ArchivalRouter, Route
|
from pywb.framework.archivalrouter import ArchivalRouter, Route
|
||||||
from pywb.framework.proxy import ProxyArchivalRouter
|
from pywb.framework.proxy import ProxyArchivalRouter
|
||||||
from pywb.framework.wbrequestresponse import WbRequest
|
from pywb.framework.wbrequestresponse import WbRequest
|
||||||
@ -37,7 +39,7 @@ DEFAULTS = {
|
|||||||
|
|
||||||
'static_routes': {'static/default': 'pywb/static/'},
|
'static_routes': {'static/default': 'pywb/static/'},
|
||||||
|
|
||||||
'domain_specific_rules': 'pywb/rules.yaml',
|
'domain_specific_rules': DEFAULT_RULES_FILE,
|
||||||
|
|
||||||
'enable_memento': True,
|
'enable_memento': True,
|
||||||
|
|
@ -1,14 +1,13 @@
|
|||||||
import urllib
|
import urllib
|
||||||
import urllib2
|
import urllib2
|
||||||
|
|
||||||
|
from pywb.utils.dsrules import DEFAULT_RULES_FILE
|
||||||
|
|
||||||
from pywb.perms.perms_filter import make_perms_cdx_filter
|
from pywb.perms.perms_filter import make_perms_cdx_filter
|
||||||
from pywb.framework.wbrequestresponse import WbResponse
|
from pywb.framework.wbrequestresponse import WbResponse
|
||||||
from pywb.cdx.cdxserver import create_cdx_server
|
from pywb.cdx.cdxserver import create_cdx_server
|
||||||
from views import MementoTimemapView
|
from views import MementoTimemapView
|
||||||
|
|
||||||
#=================================================================
|
|
||||||
DEFAULT_RULES = 'pywb/rules.yaml'
|
|
||||||
|
|
||||||
|
|
||||||
#=================================================================
|
#=================================================================
|
||||||
class QueryHandler(object):
|
class QueryHandler(object):
|
||||||
@ -33,7 +32,7 @@ class QueryHandler(object):
|
|||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def init_from_config(config,
|
def init_from_config(config,
|
||||||
ds_rules_file=DEFAULT_RULES,
|
ds_rules_file=DEFAULT_RULES_FILE,
|
||||||
html_view=None):
|
html_view=None):
|
||||||
|
|
||||||
perms_policy = config.get('perms_policy')
|
perms_policy = config.get('perms_policy')
|
@ -2,7 +2,7 @@ from pywb.utils.timeutils import timestamp_to_datetime
|
|||||||
from pywb.framework.wbrequestresponse import WbResponse
|
from pywb.framework.wbrequestresponse import WbResponse
|
||||||
from pywb.framework.memento import make_timemap, LINK_FORMAT
|
from pywb.framework.memento import make_timemap, LINK_FORMAT
|
||||||
|
|
||||||
from pywb.core.handlers import WBHandler
|
from handlers import WBHandler
|
||||||
|
|
||||||
import urlparse
|
import urlparse
|
||||||
import logging
|
import logging
|
2
setup.py
2
setup.py
@ -50,7 +50,7 @@ setup(
|
|||||||
'pywb.rewrite',
|
'pywb.rewrite',
|
||||||
'pywb.framework',
|
'pywb.framework',
|
||||||
'pywb.perms',
|
'pywb.perms',
|
||||||
'pywb.core',
|
'pywb.webapp',
|
||||||
'pywb.apps'
|
'pywb.apps'
|
||||||
],
|
],
|
||||||
package_data={
|
package_data={
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
"""
|
"""
|
||||||
An example perms policy used for testing
|
An example perms policy used as a testing fixture
|
||||||
this policy is enabled by adding the following setting to the
|
this policy is enabled by adding the following setting to the
|
||||||
main config.yaml
|
main config.yaml
|
||||||
|
|
||||||
@ -31,5 +31,3 @@ class TestExclusionPerms(Perms):
|
|||||||
#================================================================
|
#================================================================
|
||||||
def perms_policy(wbrequest):
|
def perms_policy(wbrequest):
|
||||||
return TestExclusionPerms()
|
return TestExclusionPerms()
|
||||||
|
|
||||||
|
|
@ -100,7 +100,7 @@ reporter: !!python/object/new:tests.fixture.PrintReporter []
|
|||||||
# Not yet production ready -- used primarily for testing
|
# Not yet production ready -- used primarily for testing
|
||||||
|
|
||||||
#perms_checker: !!python/object/new:pywb.cdx.perms.AllowAllPerms []
|
#perms_checker: !!python/object/new:pywb.cdx.perms.AllowAllPerms []
|
||||||
perms_policy: !!python/name:pywb.perms.test.test_perms_policy.perms_policy
|
perms_policy: !!python/name:tests.perms_fixture.perms_policy
|
||||||
|
|
||||||
# not testing memento here
|
# not testing memento here
|
||||||
enable_memento: False
|
enable_memento: False
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
from pytest import raises
|
from pytest import raises
|
||||||
import webtest
|
import webtest
|
||||||
from pywb.core.pywb_init import create_wb_router
|
from pywb.webapp.pywb_init import create_wb_router
|
||||||
from pywb.framework.wsgi_wrappers import init_app
|
from pywb.framework.wsgi_wrappers import init_app
|
||||||
from pywb.cdx.cdxobject import CDXObject
|
from pywb.cdx.cdxobject import CDXObject
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import webtest
|
import webtest
|
||||||
from pywb.core.pywb_init import create_wb_router
|
from pywb.webapp.pywb_init import create_wb_router
|
||||||
from pywb.framework.wsgi_wrappers import init_app
|
from pywb.framework.wsgi_wrappers import init_app
|
||||||
from pywb.cdx.cdxobject import CDXObject
|
from pywb.cdx.cdxobject import CDXObject
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user