diff options
author | Rogelio Mita <rogeliomita@activitycentral.com> | 2013-07-12 18:15:22 (GMT) |
---|---|---|
committer | Rogelio Mita <rogeliomita@activitycentral.com> | 2013-07-12 18:15:22 (GMT) |
commit | 40cc44934ec88dc54b2022db3064596d387b5ef8 (patch) | |
tree | 807dac2b68f43f234115e75356afa30a581636c4 | |
parent | fa4548cfc6a40948b5adea0dca9023a0aa2916bd (diff) |
GTK2: Show group type in pollster mode
-rw-r--r-- | CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py | 15 | ||||
-rw-r--r-- | CeibalEncuesta/gtk2/CeibalEncuesta/Globales.py | 19 | ||||
-rw-r--r-- | CeibalEncuesta/gtk2/CeibalEncuesta/tests.py | 39 |
3 files changed, 69 insertions, 4 deletions
diff --git a/CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py b/CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py index 811c904..97540e7 100644 --- a/CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py +++ b/CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py @@ -38,7 +38,7 @@ from Widgets import My_FileChooser from Widgets import My_Alert_Dialog, My_Alert_Dialog3 from Widgets import Wizard -from Globales import Encuesta +from Globales import Encuesta, GrupoDeEncuestados import Globales as G PATH = os.path.dirname(__file__) @@ -318,6 +318,13 @@ class CeibalEncuesta(gtk.Window): Cuando el usuario cambia de Encuestado. """ + grupo = GrupoDeEncuestados() + tipo = encuestado.split()[5] + grupo.set_tipo(int(tipo)) + encuesta_actual = Encuesta() + encuesta_actual.set_grupo(grupo) + self.encuesta_actual = encuesta_actual + import json import codecs @@ -334,7 +341,7 @@ class CeibalEncuesta(gtk.Window): self.out_dict[encuestado] = {} self.panel.update({}) - self.panel.toolbar_encuesta.encuesta_actual = Encuesta() + self.panel.toolbar_encuesta.encuesta_actual = self.encuesta_actual self.menu_bar.hide() self.infowidget.hide() @@ -342,7 +349,9 @@ class CeibalEncuesta(gtk.Window): combo_box = getattr(self.panel.lista, "combo", None) if combo_box: - current_group_text = "Grupo: %s" % combo_box.get_current_group() + tipo_grupo = self.encuesta_actual.grupo.get_tipo() + current_group_text = "Grupo: %s (%s)" % ( + combo_box.get_current_group(), tipo_grupo) self.panel.current_group_label.set_text(current_group_text) def __get_menu(self): diff --git a/CeibalEncuesta/gtk2/CeibalEncuesta/Globales.py b/CeibalEncuesta/gtk2/CeibalEncuesta/Globales.py index 297facf..1bf8def 100644 --- a/CeibalEncuesta/gtk2/CeibalEncuesta/Globales.py +++ b/CeibalEncuesta/gtk2/CeibalEncuesta/Globales.py @@ -147,3 +147,22 @@ class Encuesta(object): def finalizar(self): self.finalizada = True + + def set_grupo(self, grupo): + self.grupo = grupo + + +class GrupoDeEncuestados(object): + + TIPO_SUSTITUTO = 2 + TIPO_ORIGINAL = 1 + + def get_tipo(self): + tipos = { + GrupoDeEncuestados.TIPO_ORIGINAL: 'original', + GrupoDeEncuestados.TIPO_SUSTITUTO: 'sustituto' + } + return tipos[self.tipo] + + def set_tipo(self, tipo): + self.tipo = tipo diff --git a/CeibalEncuesta/gtk2/CeibalEncuesta/tests.py b/CeibalEncuesta/gtk2/CeibalEncuesta/tests.py index 0af9760..8e985ed 100644 --- a/CeibalEncuesta/gtk2/CeibalEncuesta/tests.py +++ b/CeibalEncuesta/gtk2/CeibalEncuesta/tests.py @@ -4,7 +4,7 @@ import shutil import glob from CeibalEncuesta import CeibalEncuesta -from Globales import Encuesta +from Globales import Encuesta, GrupoDeEncuestados WORKPATH = 'test_files' TEMPPATH = os.path.join(WORKPATH, "fixture_enc_simple.encuesta") @@ -85,5 +85,42 @@ class ComportamientoFinalizar(unittest.TestCase): self.assertTrue(encuesta.finalizada) +class GrupoDeEncuestadosTests(unittest.TestCase): + + def test_tipo_de_grupo(self): + + gde = GrupoDeEncuestados() + gde.set_tipo(GrupoDeEncuestados.TIPO_ORIGINAL) + + self.assertEqual(GrupoDeEncuestados.TIPO_ORIGINAL, gde.tipo) + + gde = GrupoDeEncuestados() + gde.set_tipo(GrupoDeEncuestados.TIPO_SUSTITUTO) + + self.assertEqual(GrupoDeEncuestados.TIPO_SUSTITUTO, gde.tipo) + + def test_tipo_de_grupo_como_string(self): + + gde = GrupoDeEncuestados() + gde.set_tipo(GrupoDeEncuestados.TIPO_ORIGINAL) + + self.assertEqual('original', gde.get_tipo()) + + gde = GrupoDeEncuestados() + gde.set_tipo(GrupoDeEncuestados.TIPO_SUSTITUTO) + + self.assertEqual('sustituto', gde.get_tipo()) + +class EncuestaTests(unittest.TestCase): + + def test_una_encuesta_pertenece_a_grupo_de_encuestados(self): + encuesta = Encuesta() + grupo = GrupoDeEncuestados() + grupo.set_tipo(GrupoDeEncuestados.TIPO_ORIGINAL) + encuesta.set_grupo(grupo) + + self.assertEqual(encuesta.grupo.get_tipo(), 'original') + + if __name__ == '__main__': unittest.main() |