Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRogelio Mita <rogeliomita@activitycentral.com>2013-07-12 18:15:22 (GMT)
committer Rogelio Mita <rogeliomita@activitycentral.com>2013-07-12 18:15:22 (GMT)
commit40cc44934ec88dc54b2022db3064596d387b5ef8 (patch)
tree807dac2b68f43f234115e75356afa30a581636c4
parentfa4548cfc6a40948b5adea0dca9023a0aa2916bd (diff)
GTK2: Show group type in pollster mode
-rw-r--r--CeibalEncuesta/gtk2/CeibalEncuesta/CeibalEncuesta.py15
-rw-r--r--CeibalEncuesta/gtk2/CeibalEncuesta/Globales.py19
-rw-r--r--CeibalEncuesta/gtk2/CeibalEncuesta/tests.py39
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()