diff --git a/sapl/redireciona_urls/tests.py b/sapl/redireciona_urls/tests.py index 7ce503c2d..ea89d9da6 100644 --- a/sapl/redireciona_urls/tests.py +++ b/sapl/redireciona_urls/tests.py @@ -1,3 +1,70 @@ +from django.core.urlresolvers import reverse from django.test import TestCase -# Create your tests here. +class RedirecionaURLsTests(TestCase): + def test_redireciona_index_SAPL(self): + # import ipdb; ipdb.set_trace() + response = self.client.get(reverse( + 'sapl.redireciona_urls:redireciona_sapl_index') + ) + self.assertEqual(response.status_code, 301) + self.assertEqual(response.url, "/") + + def test_redireciona_parlamentar_list(self): + # import ipdb; ipdb.set_trace() + url = reverse('sapl.redireciona_urls:redireciona_parlamentar') + url_e = reverse('sapl.parlamentares:parlamentar_list') + response = self.client.get(url) + self.assertEqual(response.status_code, 301) + self.assertEqual(response.url, url_e) + + def test_redireciona_parlamentar_list_por_legislatura(self): + numero_legislatura = 123 + + url = reverse('sapl.redireciona_urls:redireciona_parlamentar') + url_e = reverse('sapl.parlamentares:parlamentar_list') + + url = "%s%s" % ( + url, + "?hdn_num_legislatura=%s" % (numero_legislatura) + ) + url_e = "%s%s" % (url_e, "?pk=%s" % numero_legislatura) + + response = self.client.get(url) + + self.assertEqual(response.status_code, 301) + self.assertEqual(response.url, url_e) + + def test_redireciona_parlamentar_detail(self): + url = reverse('sapl.redireciona_urls:redireciona_parlamentar') + pk_parlamentar = 21 + url = "%s%s" % (url, "?cod_parlamentar=%s" % (pk_parlamentar)) + url_e = reverse( + 'sapl.parlamentares:parlamentar_detail', + kwargs = {'pk': pk_parlamentar} + ) + response = self.client.get(url) + self.assertEqual(response.status_code, 301) + self.assertEqual(response.url, url_e) + + + def test_redireciona_comissao_detail(self): + url = reverse('sapl.redireciona_urls:redireciona_comissao') + pk_comissao = 21 + url = "%s%s" % (url, "?cod_comissao=%s" % (pk_comissao)) + url_e = reverse( + 'sapl.comissoes:comissao_detail', + kwargs = {'pk': pk_comissao} + ) + response = self.client.get(url) + self.assertEqual(response.status_code, 301) + self.assertEqual(response.url, url_e) + + + def test_redireciona_comissao_list(self): + url = reverse('sapl.redireciona_urls:redireciona_comissao') + url_e = reverse( + 'sapl.comissoes:comissao_list') + response = self.client.get(url) + self.assertEqual(response.status_code, 301) + self.assertEqual(response.url, url_e) diff --git a/sapl/redireciona_urls/urls.py b/sapl/redireciona_urls/urls.py index 7fa0860ee..d1f0ab382 100644 --- a/sapl/redireciona_urls/urls.py +++ b/sapl/redireciona_urls/urls.py @@ -2,6 +2,7 @@ from .views import ( RedirecionaComissao, RedirecionaMateriaLegislativaDetail, RedirecionaMateriaLegislativaList, + RedirecionaMesaDiretoraView, RedirecionaParlamentar, RedirecionaPautaSessao, RedirecionaRelatoriosList, @@ -28,6 +29,12 @@ urlpatterns = [ url(r'^consultas/pauta_sessao/pauta_sessao_', RedirecionaPautaSessao.as_view(), name='redireciona_pauta_sessao_'), + url(r'^consultas/mesa_diretora/', + RedirecionaMesaDiretoraView.as_view(), + name='redireciona_mesa_diretora'), + url(r'^consultas/mesa_diretora/parlamentar/parlamentar_', + RedirecionaParlamentar.as_view(), + name='redireciona_mesa_diretora_parlamentar'), url(r'^consultas/sessao_plenaria/', RedirecionaSessaoPlenaria.as_view(), name='redireciona_sessao_plenaria_'), diff --git a/sapl/redireciona_urls/views.py b/sapl/redireciona_urls/views.py index 3dc4b659d..e075be635 100644 --- a/sapl/redireciona_urls/views.py +++ b/sapl/redireciona_urls/views.py @@ -17,6 +17,7 @@ app_relatorios = relatoriosConfig.name parlamentar_list = ( app_parlamentares + ':parlamentar_list') parlamentar_detail = (app_parlamentares + ':parlamentar_detail') +parlamentar_mesa_diretora = (app_parlamentares + ':mesa_diretora') comissao_list = (app_comissoes + ':comissao_list') comissao_detail = (app_comissoes + ':comissao_detail') @@ -40,7 +41,7 @@ class RedirecionaSAPLIndex(RedirectView): def get(self, request, *args, **kwargs): self.url = '/' return super( - RedirecionaSAPLIndexRedirectView, + RedirecionaSAPLIndex, self ).get(self, request, *args, **kwargs) @@ -63,9 +64,9 @@ class RedirecionaParlamentar(RedirectView): except NoReverseMatch: raise UnknownUrlNameError(parlamentar_list) - pk = self.request.GET.get('hdn_num_legislatura', '') - if pk: - args = '?pk=' + pk + numero_legislatura = self.request.GET.get('hdn_num_legislatura', '') + if numero_legislatura: + args = '?pk=' + numero_legislatura url = "%s%s" % (url, args) return url @@ -76,10 +77,10 @@ class RedirecionaComissao(RedirectView): def get_redirect_url(self): url = '' - pk = self.request.GET.get('cod_comissao', '') + pk_comissao = self.request.GET.get('cod_comissao', '') - if pk: - kwargs = {'pk': pk} + if pk_comissao: + kwargs = {'pk': pk_comissao} try: url = reverse(comissao_detail, kwargs=kwargs) @@ -93,13 +94,6 @@ class RedirecionaComissao(RedirectView): return url -class RedirecionaComissaoDetail(RedirectView): - permanent = True - - def get_redirect_url(self): - return reverse(comissao_list) - - class RedirecionaPautaSessao(RedirectView): permanent = True @@ -286,3 +280,15 @@ class RedirecionaMateriaLegislativaList(RedirectView): url = "%s%s" % (url, args) return url + + +class RedirecionaMesaDiretoraView(RedirectView): + permanent = True + + def get_redirect_url(self): + try: + url = reverse(parlamentar_mesa_diretora) + except NoReverseMatch: + raise UnknownUrlNameError(parlamentar_mesa_diretora) + + return url diff --git a/sapl/test_urls.py b/sapl/test_urls.py index 7756c9cc3..889070af2 100644 --- a/sapl/test_urls.py +++ b/sapl/test_urls.py @@ -183,6 +183,8 @@ apps_url_patterns_prefixs_and_users = { '/relatorios_administrativos/tramitacaoMaterias/tramitacaoMaterias', '/relatorios_administrativos/tramitacaoMaterias/materia_mostrar_proc', '/generico/materia_pesquisar_', + '/consultas/mesa_diretora/', + '/consultas/mesa_diretora/parlamentar/parlamentar_', ]}, 'lexml': { 'prefixs': [