Skip to content

Commit

Permalink
Refactor
Browse files Browse the repository at this point in the history
  • Loading branch information
hvelarde committed Oct 2, 2017
1 parent 9ae3c1c commit 80c2b59
Show file tree
Hide file tree
Showing 12 changed files with 43 additions and 58 deletions.
12 changes: 4 additions & 8 deletions src/brasil/gov/vcge/at/extender.py
Expand Up @@ -14,18 +14,16 @@


class ExtensionLinesField(ExtensionField, atapi.LinesField):
""" Usamos um campo tipo Linhas (LinesField) como base
e o extendemos.
"""
"""Usamos um campo tipo Linhas (LinesField) como base e o extendemos."""


# Este adaptador sera aplicado a todos os tipos baseados em Archetypes
@adapter(IBaseContent)
# We use both orderable and browser layer aware sensitive properties
@implementer(IBrowserLayerAwareExtender)
class VCGEExtender(object):
""" Adaptador que extende os tipos de conteudo base do Plone
com o campo skos (representando o VCGE)
"""Adaptador que extende os tipos de conteudo base do Plone com o
campo skos (representando o VCGE).
"""

layer = IVCGEInstalado
Expand All @@ -43,7 +41,5 @@ def __init__(self, context):
self.context = context

def getFields(self):
"""
@return: Lista de campos adicionados ao conteudo
"""
"""Lista de campos adicionados ao conteudo."""
return self.fields
10 changes: 5 additions & 5 deletions src/brasil/gov/vcge/browser/viewlets.py
@@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
""" Modulo que implementa o(s) viewlet(s) do VCGE"""
"""Modulo que implementa o(s) viewlet(s) do VCGE."""
from Acquisition import aq_base
from Acquisition import aq_inner
from plone.app.layout.viewlets import ViewletBase
Expand All @@ -11,18 +11,18 @@


class VCGEViewlet(ViewletBase):
""" Viewlet adicionado a estrutura visual do portal """
"""Viewlet adicionado a estrutura visual do portal."""
# Indica qual o template sera usado por este viewlet
index = ViewPageTemplateFile('templates/vcge.pt')

def update(self):
""" Prepara/Atualiza os valores utilizados pelo Viewlet """
"""Prepara/Atualiza os valores utilizados pelo Viewlet."""
super(VCGEViewlet, self).update()
ps = self.context.restrictedTraverse('@@plone_portal_state')
self.nav_root_url = ps.navigation_root().absolute_url()

def skos(self):
""" Retorna lista de itens selecionados neste conteudo """
"""Retorna lista de itens selecionados neste conteudo."""
context = aq_base(aq_inner(self.context))
uris = []
if safe_hasattr(context, 'skos'):
Expand All @@ -43,7 +43,7 @@ def skos(self):
return skos

def rel(self):
"""Formata rel a ser utilizado no href de cada termo"""
"""Formata rel a ser utilizado no href de cada termo."""
return u'dc:subject foaf:primaryTopic'


Expand Down
4 changes: 2 additions & 2 deletions src/brasil/gov/vcge/config.py
Expand Up @@ -13,7 +13,7 @@

@implementer(qi_interfaces.INonInstallable)
class HiddenProducts(object):
""" Oculta produtos do QuickInstaller """
"""Oculta produtos do QuickInstaller."""

def getNonInstallableProducts(self):
return [
Expand All @@ -23,7 +23,7 @@ def getNonInstallableProducts(self):

@implementer(plone_interfaces.INonInstallable)
class HiddenProfiles(object):
""" Oculta profiles da tela inicial de criacao do site """
"""Oculta profiles da tela inicial de criacao do site."""

def getNonInstallableProfiles(self):
return [
Expand Down
16 changes: 8 additions & 8 deletions src/brasil/gov/vcge/contentrules/action.py
Expand Up @@ -24,8 +24,8 @@


class IVCGEAction(Interface):
""" Interface utilizada para descrever os elementos configuraveis
desta ação.
"""Interface utilizada para descrever os elementos configuraveis
desta ação.
"""

same_as_parent = Bool(title=_(u'Utilizar os termos da pasta'),
Expand All @@ -43,7 +43,7 @@ class IVCGEAction(Interface):

@implementer(IVCGEAction, IRuleElementData)
class VCGEAction(SimpleItem):
""" A implementacao persistente para a acao VCGE """
"""A implementacao persistente para a acao VCGE."""

element = 'brasil.gov.vcge.actions.VCGE'
same_as_parent = False
Expand All @@ -64,8 +64,8 @@ def summary(self):
@implementer(IExecutable)
@adapter(Interface, IVCGEAction, Interface)
class VCGEActionExecutor(object):
""" O executor para esta acao.
Este codigo esta registrado como adaptador no configure.zcml
"""O executor para esta acao.
Este codigo esta registrado como adaptador no configure.zcml.
"""

def __init__(self, context, element, event):
Expand All @@ -74,7 +74,7 @@ def __init__(self, context, element, event):
self.event = event

def __call__(self):
""" Apply selected layout to a content item """
"""Apply selected layout to a content item."""
obj = self.event.object
same_as_parent = self.element.same_as_parent
skos = self.element.skos
Expand All @@ -89,7 +89,7 @@ def __call__(self):


class VCGEAddForm(AddForm):
""" Formulario de adicao para acao VCGE """
"""Formulario de adicao para acao VCGE."""
form_fields = form.FormFields(IVCGEAction)
label = _(u'Adicionar ação VCGE na regra de conteúdo')
description = FORM_DESC
Expand All @@ -102,7 +102,7 @@ def create(self, data):


class VCGEEditForm(EditForm):
""" Formulario de adicao para edicao VCGE """
"""Formulario de adicao para edicao VCGE."""
form_fields = form.FormFields(IVCGEAction)
label = _(u'Editar ação VCGE na regra de conteúdo')
description = FORM_DESC
Expand Down
19 changes: 7 additions & 12 deletions src/brasil/gov/vcge/contentrules/condition.py
Expand Up @@ -26,8 +26,8 @@


class IVCGECondition(Interface):
""" Interface utilizada para descrever os elementos configuraveis
desta condicao.
"""Interface utilizada para descrever os elementos configuraveis
desta condicao.
"""

skos = Set(title=_(u'VCGE'),
Expand All @@ -40,8 +40,7 @@ class IVCGECondition(Interface):

@implementer(IVCGECondition, IRuleElementData)
class VCGECondition(SimpleItem):
""" A implementacao persistente para a condicao VCGE
"""
"""A implementacao persistente para a condicao VCGE."""

skos = []
element = 'brasil.gov.vcge.conditions.VCGE'
Expand All @@ -60,8 +59,8 @@ def summary(self):
@implementer(IExecutable)
@adapter(Interface, IVCGECondition, Interface)
class VCGEConditionExecutor(object):
""" O executor para esta condicao.
Este codigo esta registrado como adaptador no configure.zcml
"""O executor para esta condicao.
Este codigo esta registrado como adaptador no configure.zcml.
"""

def __init__(self, context, element, event):
Expand All @@ -84,9 +83,7 @@ def __call__(self):


class VCGEAddForm(AddForm):
""" Formulario de adicao para condicoes
de VCGE
"""
"""Formulario de adicao para condicoes de VCGE."""
form_fields = form.FormFields(IVCGECondition)
label = _(u'Adicionar condição VCGE')
description = FORM_DESC
Expand All @@ -99,9 +96,7 @@ def create(self, data):


class VCGEEditForm(EditForm):
""" Formulario de edicao para condicoes
de VCGE
"""
"""Formulario de edicao para condicoes de VCGE."""
form_fields = form.FormFields(IVCGECondition)
label = _(u'Editar condição VCGE')
description = FORM_DESC
Expand Down
12 changes: 3 additions & 9 deletions src/brasil/gov/vcge/contentrules/utils.py
Expand Up @@ -4,26 +4,20 @@


def vcge_available(obj):
""" Valida se o objeto tem o atributo de
armazenamento do VCGE
"""
"""Valida se o objeto tem o atributo de armazenamento do VCGE."""
return safe_hasattr(aq_base(obj), 'skos')


def vcge_for_object(obj):
""" Retorna valores armazenados no atributo
VCGE de um objeto
"""
"""Retorna valores armazenados no atributo VCGE de um objeto."""
skos = []
if safe_hasattr(aq_base(obj), 'skos'):
skos = obj.skos
return skos


def set_vcge(obj, skos):
""" Armazena valores no atributo
VCGE de um objeto
"""
"""Armazena valores no atributo VCGE de um objeto."""
if safe_hasattr(aq_base(obj), 'skos'):
obj.skos = skos
return True
2 changes: 1 addition & 1 deletion src/brasil/gov/vcge/dx/behaviors.py
Expand Up @@ -11,7 +11,7 @@


class IVCGE(model.Schema):
""" VCGE Behaviour """
"""VCGE Behaviour."""

# categorization fieldset
model.fieldset(
Expand Down
8 changes: 4 additions & 4 deletions src/brasil/gov/vcge/tests/test_behavior.py
Expand Up @@ -53,7 +53,7 @@ def test_skos_getter(self):


class TestBehavior(unittest.TestCase):
"""Test behavior applied in a content type """
"""Test behavior applied in a content type."""

layer = INTEGRATION_TESTING

Expand Down Expand Up @@ -102,7 +102,7 @@ def test_content_information(self):


class TestViewlet(unittest.TestCase):
"""Test viewlet implementation with dexterity"""
"""Test viewlet implementation with Dexterity."""

layer = INTEGRATION_TESTING

Expand Down Expand Up @@ -155,8 +155,8 @@ def test_skos(self):
self.assertEqual(term.get('title'), u'Achados e perdidos')

def test_skos_not_existent(self):
""" Testa o que acontece quando nao temos o Extender
aplicado a um tipo de conteudo (neste caso o proprio portal)
"""Testa o que acontece quando nao temos o Extender aplicado a
um tipo de conteudo (neste caso o proprio portal).
"""
portal = self.portal
viewlet = VCGEViewlet(portal, self.request, None, None)
Expand Down
4 changes: 2 additions & 2 deletions src/brasil/gov/vcge/tests/test_catalog.py
Expand Up @@ -10,7 +10,7 @@


class BaseTestCase(unittest.TestCase):
"""base test case to be used by other tests"""
"""Base test case to be used by other tests."""

layer = INTEGRATION_TESTING

Expand All @@ -27,7 +27,7 @@ def setUp(self):


class TestCatalogSetup(BaseTestCase):
""" Garante que temos o indice e a coluna criados"""
"""Garante que temos o indice e a coluna criados."""

def test_index(self):
self.assertTrue('skos' in self.ct.Indexes)
Expand Down
4 changes: 2 additions & 2 deletions src/brasil/gov/vcge/tests/test_collection.py
Expand Up @@ -10,7 +10,7 @@


class BaseTestCase(unittest.TestCase):
"""base test case to be used by other tests"""
"""Base test case to be used by other tests."""

layer = INTEGRATION_TESTING

Expand All @@ -29,7 +29,7 @@ def setUp(self):


class TestCollectionRegistrySetup(BaseTestCase):
""" Garante que temos a opcao de filtrar colecoes pelo VCGE"""
"""Garante que temos a opcao de filtrar colecoes pelo VCGE."""

def test_querystring_field_available(self):
registry = self.registry
Expand Down
6 changes: 3 additions & 3 deletions src/brasil/gov/vcge/tests/test_viewlet.py
Expand Up @@ -12,7 +12,7 @@


class TestViewlet(unittest.TestCase):
"""Test viewlet implementation"""
"""Test viewlet implementation."""

layer = INTEGRATION_TESTING

Expand Down Expand Up @@ -56,8 +56,8 @@ def test_skos(self):
self.assertEqual(term.get('title'), u'Achados e perdidos')

def test_skos_not_existent(self):
""" Testa o que acontece quando nao temos o Extender
aplicado a um tipo de conteudo (neste caso o proprio portal)
"""Testa o que acontece quando nao temos o Extender aplicado a
um tipo de conteudo (neste caso o proprio portal).
"""
portal = self.portal
viewlet = VCGEViewlet(portal, self.request, None, None)
Expand Down
4 changes: 2 additions & 2 deletions src/brasil/gov/vcge/utils.py
Expand Up @@ -9,15 +9,15 @@

@forever.memoize
def load_skos(data_file=config.DEFAULT_FILE):
""" Retorna os dados em formato de dicionarios """
"""Retorna os dados em formato de dicionarios."""
path = os.path.dirname(__file__)
data = open(os.path.join(path, 'data', data_file)).read()
termos = parse_skos(data, format=config.DEFAULT_FORMAT)
return termos


def parse_skos(data, format='xml'):
""" Realiza o parse de uma string skos """
"""Realiza o parse de uma string skos."""
g = rdflib.Graph()
result = g.parse(data=data, format=format)

Expand Down

0 comments on commit 80c2b59

Please sign in to comment.