From 4bab839ee4b30f2f6d2ba6ecdd52cdbae1f31da6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thibault=20Cl=C3=A9rice?= Date: Fri, 15 Apr 2016 17:26:30 +0200 Subject: [PATCH] Issue 41 (#42) Release 0.0.4 - Updated to new releases of MyCapytain and Nautilus (Fixed #41) - Renaming according to new convention: former endpoints are called retrievers --- flask_nemo/__init__.py | 24 ++++++++++++------------ requirements.txt | 2 +- setup.py | 6 +++--- tests/resources.py | 4 ++-- tests/test_init.py | 8 ++++---- tests/test_with_nautilus.py | 2 +- 6 files changed, 23 insertions(+), 23 deletions(-) diff --git a/flask_nemo/__init__.py b/flask_nemo/__init__.py index fbbcddb..b512fe0 100644 --- a/flask_nemo/__init__.py +++ b/flask_nemo/__init__.py @@ -12,8 +12,8 @@ import requests_cache import jinja2 from flask import request, render_template, Blueprint, abort, Markup, send_from_directory, Flask -import MyCapytain.endpoints.cts5 -from MyCapytain.endpoints.proto import CTS as CtsProtoEndpoint +import MyCapytain.retrievers.cts5 +from MyCapytain.retrievers.proto import CTS as CtsProtoRetriever import MyCapytain.resources.texts.tei import MyCapytain.resources.texts.api import MyCapytain.resources.inventory @@ -34,8 +34,8 @@ class Nemo(object): :type app: Flask :param api_url: URL of the API Endpoint :type api_url: str - :param endpoint: CTS Endpoint (Will be defaulted to api_url using cts5 endpoint if necessary) - :type endpoint: MyCapytain.endpoints.proto.CTS + :param retriever: CTS Retriever (Will be defaulted to api_url using cts5 retriever if necessary) + :type retriever: MyCapytain.retrievers.proto.CTS :param base_url: Base URL to use when registering the endpoint :type base_url: str :param cache: SQLITE cache file name @@ -108,7 +108,7 @@ class Nemo(object): "f_order_author" ] - def __init__(self, name=None, app=None, api_url="/", endpoint=None, base_url="/nemo", cache=None, expire=3600, + def __init__(self, name=None, app=None, api_url="/", retriever=None, base_url="/nemo", cache=None, expire=3600, template_folder=None, static_folder=None, static_url_path=None, urls=None, inventory=None, transform=None, urntransform=None, chunker=None, prevnext=None, css=None, js=None, templates=None, statics=None): @@ -119,10 +119,10 @@ def __init__(self, name=None, app=None, api_url="/", endpoint=None, base_url="/n self.prefix = base_url self.api_url = api_url - if isinstance(endpoint, CtsProtoEndpoint): - self.endpoint = endpoint + if isinstance(retriever, CtsProtoRetriever): + self.retriever = retriever else: - self.endpoint = MyCapytain.endpoints.cts5.CTS(self.api_url) + self.retriever = MyCapytain.retrievers.cts5.CTS(self.api_url) self.templates = copy(Nemo.TEMPLATES) if isinstance(templates, dict): @@ -136,7 +136,7 @@ def __init__(self, name=None, app=None, api_url="/", endpoint=None, base_url="/n self.api_inventory = inventory if self.api_inventory: - self.endpoint.inventory = self.api_inventory + self.retriever.inventory = self.api_inventory self.cache = None if cache is not None: self.__register_cache(cache, expire) @@ -297,7 +297,7 @@ def get_inventory(self): if self._inventory: return self._inventory - reply = self.endpoint.getCapabilities(inventory=self.api_inventory) + reply = self.retriever.getCapabilities(inventory=self.api_inventory) inventory = MyCapytain.resources.inventory.TextInventory(resource=reply) self._inventory = inventory return self._inventory @@ -433,7 +433,7 @@ def get_reffs(self, collection, textgroup, work, version): text = self.get_text(collection, textgroup, work, version) reffs = MyCapytain.resources.texts.api.Text( "urn:cts:{0}:{1}.{2}.{3}".format(collection, textgroup, work, version), - self.endpoint, + self.retriever, citation=text.citation ) return text, lambda level: reffs.getValidReff(level=level) @@ -457,7 +457,7 @@ def get_passage(self, collection, textgroup, work, version, passage_identifier): """ text = MyCapytain.resources.texts.api.Text( "urn:cts:{0}:{1}.{2}.{3}".format(collection, textgroup, work, version), - self.endpoint + self.retriever ) passage = text.getPassage(passage_identifier) return passage diff --git a/requirements.txt b/requirements.txt index 82f2ec0..9565ca1 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,3 @@ -MyCapytain>=0.1.1 +MyCapytain>=1.0.1 requests_cache>=0.4.9 Flask>=0.10.1 \ No newline at end of file diff --git a/setup.py b/setup.py index 424d4a7..72f9a9e 100644 --- a/setup.py +++ b/setup.py @@ -2,7 +2,7 @@ setup( name='flask_nemo', - version="0.0.3", + version="0.0.4", packages=find_packages(exclude=["examples"]), url='https://github.com/capitains/flask-capitains-nemo', license='GNU GPL', @@ -11,13 +11,13 @@ description='Flask Extension to Browse CTS Repository', test_suite="tests", install_requires=[ - "MyCapytain>=0.1.1", + "MyCapytain>=1.0.1", "requests_cache>=0.4.9", "Flask>=0.10.1" ], tests_require=[ "mock==1.0.1", - "capitains_nautilus>=0.0.2" + "capitains_nautilus>=0.0.3" ], entry_points={ 'console_scripts': ['capitains-nemo=flask_nemo:cmd'], diff --git a/tests/resources.py b/tests/resources.py index 2ae5655..8585a84 100644 --- a/tests/resources.py +++ b/tests/resources.py @@ -1,7 +1,7 @@ import unittest from flask.ext.nemo import Nemo from flask import Markup, Flask -from capitains_nautilus.mycapytain import NautilusEndpoint +from capitains_nautilus.mycapytain import NautilusRetriever def create_test_app(debug=False, config=None): app = Flask(__name__) @@ -60,4 +60,4 @@ def setUp(self): api_url=NemoResource.endpoint ) -NautilusDummy = NautilusEndpoint(folders=["./tests/test_data/nautilus/farsiLit", "./tests/test_data/nautilus/latinLit"]) +NautilusDummy = NautilusRetriever(folders=["./tests/test_data/nautilus/farsiLit", "./tests/test_data/nautilus/latinLit"]) diff --git a/tests/test_init.py b/tests/test_init.py index 1a11dd7..1c492f5 100644 --- a/tests/test_init.py +++ b/tests/test_init.py @@ -66,11 +66,11 @@ def test_template_folder(self): def test_other_endpoint(self): """ Test when an endpoint is set """ - nemo = Nemo(endpoint=NautilusDummy) - self.assertEqual(nemo.endpoint, NautilusDummy, "Endpoint should be set through endpoint parameter") + nemo = Nemo(retriever=NautilusDummy) + self.assertEqual(nemo.retriever, NautilusDummy, "Endpoint should be set through endpoint parameter") - nemo = Nemo(api_url="http://foo.bar", endpoint=NautilusDummy) - self.assertEqual(nemo.endpoint, NautilusDummy, + nemo = Nemo(api_url="http://foo.bar", retriever=NautilusDummy) + self.assertEqual(nemo.retriever, NautilusDummy, "Endpoint should be set through endpoint parameter, regardless of api_url") self.assertEqual(nemo.api_url, "http://foo.bar", "api_urlshould be set through endpoint parameter, regardless of endpoint") diff --git a/tests/test_with_nautilus.py b/tests/test_with_nautilus.py index 657a002..5fbaa57 100644 --- a/tests/test_with_nautilus.py +++ b/tests/test_with_nautilus.py @@ -17,7 +17,7 @@ def setUp(self): nemo = Nemo( app=app, base_url="", - endpoint=NautilusDummy, + retriever=NautilusDummy, chunker={"default": lambda x, y: Nemo.level_grouper(x, y, groupby=30)} ) nemo.register_routes()