Skip to content

Commit

Permalink
Target fix
Browse files Browse the repository at this point in the history
  • Loading branch information
PonteIneptique committed May 13, 2016
1 parent a3b3dec commit b82ead4
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 17 deletions.
34 changes: 19 additions & 15 deletions flask_nemo/query/annotation.py
@@ -1,5 +1,22 @@
# -*- coding: utf-8 -*-
from copy import deepcopy
from MyCapytain.common.reference import URN


class Target(object):
""" AnnotationTarget
:param urn: URN targeted by an Annotation
:type urn: MyCapytain.common.reference.URN
"""

def __init__(self, urn, **kwargs):
if not isinstance(urn, URN):
urn = URN(urn)
self.__urn__ = urn

@property
def urn(self):
return self.__urn__


class AnnotationResource(object):
Expand All @@ -17,9 +34,9 @@ class AnnotationResource(object):

SLUG = "annotation"

def __init__(self, uri, target, type_uri, resolver, **kwargs):
def __init__(self, uri, target, type_uri, resolver, target_class=Target, **kwargs):
self.__uri__ = uri
self.__target__ = target
self.__target__ = Target(target)
self.__type_uri__ = type_uri
self.__slug__ = deepcopy(type(self).SLUG)

Expand Down Expand Up @@ -68,16 +85,3 @@ def expandable(self):
@property
def target(self):
return self.__target__

class Target(object):
""" AnnotationTarget
:param urn: URN targeted by an Annotation
:type urn: MyCapytain.common.reference.URN
"""

def __init__(self, urn, **kwargs):
self.__urn__ = urn

@property
def urn(self):
return self.__urn__
4 changes: 2 additions & 2 deletions tests/test_query/test_query.py
Expand Up @@ -14,7 +14,7 @@ def setUp(self):
self.retrieverproto = RetrieverPrototype()
self.resolver = Resolver(self.retrieverproto)
self.fakeurn = MyCapytain.common.reference.URN("urn:cts:greekLit:tlg0012.tlg001.perseus-grc1")
self.faketarget = Target(self.fakeurn)
self.faketarget = self.fakeurn

def test_query_prototype(self):
""" Test that the query prototype returns nothing """
Expand All @@ -39,7 +39,7 @@ def test_resolver(self):

def test_target_urn(self):
""" Test that a target returns its urn property """
self.assertEqual(self.fakeurn, self.faketarget.urn)
self.assertEqual(self.fakeurn, Target(self.fakeurn).urn)

def test_annotation_resource_read(self):
""" Test that an annotation resource with default resolver raises an exception on read """
Expand Down

0 comments on commit b82ead4

Please sign in to comment.