From fdbcd3250d1896dc2e0d99ee0280888e2f40a044 Mon Sep 17 00:00:00 2001 From: Eliseu Egewarth Date: Wed, 31 May 2017 18:32:39 -0300 Subject: [PATCH] Adiciona RedirecionaMateriasPorAutor Redireciona para 'sapl.base:materia_por_autor' Adiciona RedirecionaMateriasPorAnoAutorTipo Redireciona para 'sapl.base:materia_por_ano_autor_tipo' MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adiciona 'resumoPropositurasAutor' e 'propositurasAnoAutorTipo' a lista de urls Adiciona url na lista de url_patterns em redireciona_urls.urls.py Adiciona url na lista de prefixos em test_urls.py Adiciona testes para RedirecionaMateriasPorAutor e RedirecionaMateriasPorAnoAutorTipo Cria classe RedirecionaMateriasPorAutorTests *Cria teste test_redireciona_materias_por_autor_list_sem_parametros Cria classe RedirecionaMateriasPorAnoAutorTipoTests *Cria teste test_redireciona_materias_por_ano_autor_tipo_list_sem_parametros *Cria teste test_redireciona_materias_por_ano_autor_tipo_list Corrige erro de implementação em RedirecionaMateriasPorAnoAutorTipo Signed-off-by: Eliseu Egewarth --- sapl/redireciona_urls/tests.py | 41 ++++++++++++++++++++++++++++++++++ sapl/redireciona_urls/urls.py | 8 +++++++ sapl/redireciona_urls/views.py | 38 +++++++++++++++++++++++++++++++ sapl/test_urls.py | 2 ++ 4 files changed, 89 insertions(+) diff --git a/sapl/redireciona_urls/tests.py b/sapl/redireciona_urls/tests.py index 77bfdaec8..f9ffa02ef 100644 --- a/sapl/redireciona_urls/tests.py +++ b/sapl/redireciona_urls/tests.py @@ -667,3 +667,44 @@ class RedirecionaPresencaParlamentaresTests(TestCase): response = self.client.get(url) self.assertEqual(response.status_code, MovedPermanentlyHTTPStatusCode) self.assertEqual(response.url, url_e) + + +class RedirecionaMateriasPorAutorTests(TestCase): + url_pattern = 'sapl.redireciona_urls:redireciona_materias_por_autor_list' + + def test_redireciona_materias_por_autor_list_sem_parametros(self): + url = reverse(self.url_pattern) + url_e = reverse('sapl.base:materia_por_autor') + + response = self.client.get(url) + self.assertEqual(response.status_code, MovedPermanentlyHTTPStatusCode) + self.assertEqual(response.url, url_e) + + +class RedirecionaMateriasPorAnoAutorTipoTests(TestCase): + url_pattern = ( + 'sapl.redireciona_urls:redireciona_materia_por_ano_autor_tipo_list') + + def test_redireciona_materias_por_ano_autor_tipo_list_sem_parametros(self): + url = reverse(self.url_pattern) + url_e = reverse('sapl.base:materia_por_ano_autor_tipo') + + response = self.client.get(url) + self.assertEqual(response.status_code, MovedPermanentlyHTTPStatusCode) + self.assertEqual(response.url, url_e) + + def test_redireciona_materias_por_ano_autor_tipo_list(self): + url = reverse(self.url_pattern) + url_e = reverse('sapl.base:materia_por_ano_autor_tipo') + + ano = 2017 + + args = "?ano=%s" % (ano) + url = "%s%s" % (url, args) + + args_e = "?ano=%s&salvar=Pesquisar" % (ano) + url_e = "%s%s" % (url_e, args_e) + + response = self.client.get(url) + self.assertEqual(response.status_code, MovedPermanentlyHTTPStatusCode) + self.assertEqual(response.url, url_e) diff --git a/sapl/redireciona_urls/urls.py b/sapl/redireciona_urls/urls.py index c6ecd61f4..8e8ac7d99 100644 --- a/sapl/redireciona_urls/urls.py +++ b/sapl/redireciona_urls/urls.py @@ -5,6 +5,8 @@ from .views import ( RedirecionaHistoricoTramitacoesList, RedirecionaMateriaLegislativaDetail, RedirecionaMateriaLegislativaList, + RedirecionaMateriasPorAnoAutorTipo, + RedirecionaMateriasPorAutor, RedirecionaMesaDiretoraView, RedirecionaNormasJuridicasDetail, RedirecionaNormasJuridicasList, @@ -69,4 +71,10 @@ urlpatterns = [ url(r'presencaSessao', RedirecionaPresencaParlamentares.as_view(), name='redireciona_presencaparlamentar_list'), + url(r'resumoPropositurasAutor', + RedirecionaMateriasPorAutor.as_view(), + name='redireciona_materias_por_autor_list'), + url(r'propositurasAnoAutorTipo', + RedirecionaMateriasPorAnoAutorTipo.as_view(), + name='redireciona_materia_por_ano_autor_tipo_list'), ] diff --git a/sapl/redireciona_urls/views.py b/sapl/redireciona_urls/views.py index 6cd0529be..8e9d5afbe 100644 --- a/sapl/redireciona_urls/views.py +++ b/sapl/redireciona_urls/views.py @@ -44,6 +44,9 @@ norma_juridica_pesquisa = (app_norma + ':norma_pesquisa') relatorios_list = (app_relatorios + ':relatorios_list') relatorio_materia_por_tramitacao = (app_relatorios + ':materia_por_tramitacao') +relatorio_materia_por_autor = (app_relatorios + ':materia_por_autor') +relatorio_materia_por_ano_autor_tipo = ( + app_relatorios + ':materia_por_ano_autor_tipo') historico_tramitacoes = (app_relatorios + ':historico_tramitacoes') @@ -537,3 +540,38 @@ class RedirecionaPresencaParlamentares(RedirectView): url = "%s%s" % (url, args) return url + + +class RedirecionaMateriasPorAutor(RedirectView): + + permanent = True + + def get_redirect_url(self): + url = EMPTY_STRING + try: + url = reverse(relatorio_materia_por_autor) + except NoReverseMatch: + raise UnknownUrlNameError(relatorio_materia_por_autor) + + return url + + +class RedirecionaMateriasPorAnoAutorTipo(RedirectView): + + permanent = True + + def get_redirect_url(self): + url = EMPTY_STRING + ano = self.request.GET.get('ano', '') + + try: + url = reverse(relatorio_materia_por_ano_autor_tipo) + except NoReverseMatch: + raise UnknownUrlNameError(relatorio_materia_por_ano_autor_tipo) + + if ano: + args = "?ano=%s" % (ano) + args += "&salvar=%s" % ('Pesquisar') + url = "%s%s" % (url, args) + + return url diff --git a/sapl/test_urls.py b/sapl/test_urls.py index 254322eda..8b5207276 100644 --- a/sapl/test_urls.py +++ b/sapl/test_urls.py @@ -190,6 +190,8 @@ apps_url_patterns_prefixs_and_users = { '/historicoTramitacoes/historicoTramitacoes', '/atasSessao', '/presencaSessao', + '/resumoPropositurasAutor', + '/propositurasAnoAutorTipo', ]}, 'lexml': { 'prefixs': [