Ejemplo n.º 1
0
    def setUp(self):
        MangroveTestCase.setUp(self)
        self.csv_data = """
"form_code","t","n","l","g","d","s","m"
"REG","reporter","Aàman Farafangana ","Farafangana ","-21.8  46.8333","This is a Clinic in near to Farafangana ","r1",987654328
"REG","reporter","Reporter1 Fianarantsoa ","mahajanga ","-20.45  45.1","C'est une clinique à Fianarantsoa","r2",987654329
"REG","reporter","Reporter2 Maintirano ","Maintirano ","-18.05  44.0333","This is a reporter in Maintirano ","r3",987654333
"REG","reporter","Reporter3 Mananjary ","Mananjary ","-21.2  48.3667","This is a reporter in Mananjary ","r4",987654334
"""
        self.csv_data_without_short_code = """
"form_code","t","n","l","g","d","m"
"REG","reporter","Aàman Farafangana ","Farafangana ","-21.8  46.8333","This is a Clinic in near to Farafangana ",987654328
"REG","reporter","Reporter1 Fianarantsoa ","mahajanga ","-20.45  45.1","C'est une clinique à Fianarantsoa",987654329
"REG","reporter","Reporter2 Maintirano ","Maintirano ","-18.05  44.0333","This is a reporter in Maintirano ",987654333
"REG","reporter","Reporter3 Mananjary ","Mananjary ","-21.2  48.3667","This is a reporter in Mananjary ",987654334
"""
        self.csv_subjects_data = """
"form_code","q1","q2"
"cli01","Aàman Farafangana ","Farafangana "
"cli01","Reporter1 Fianarantsoa ","mahajanga "
"cli01","Reporter2 Maintirano ","Maintirano "
"cli01","Reporter3 Mananjary ","Mananjary "
"""
        self.csv_subjects_data_with_error_form_code = """
"form_code","q1","q2"
"cli1","Aàman Farafangana ","Farafangana "
"cli1","Reporter1 Fianarantsoa ","mahajanga "
"cli1","Reporter2 Maintirano ","Maintirano "
"cli1","Reporter3 Mananjary ","Mananjary "
"""
        initializer.run(self.manager)
Ejemplo n.º 2
0
 def setUp(self):
     MangroveTestCase.setUp(self)
     initializer.run(self.manager)
     self.ds1 = self.create_datasender()
     self.ds2 = self.create_datasender()
     self.project = Project(self.manager,
                            name="Test reminders",
                            form_code="abc",
                            fields=[],
                            goals="This project is for automation",
                            devices=["sms", "web", "smartPhone"],
                            sender_group="close")
     self.manager._save_document(
         SurveyResponseDocument(channel="transport",
                                destination=12345,
                                form_model_id=self.project.id,
                                values={
                                    'Q1': 'ans1',
                                    'Q2': 'ans2'
                                },
                                status=False,
                                error_message="",
                                data_record_id='2345678',
                                owner_uid=self.ds1.id,
                                event_time=datetime.datetime(2011, 9, 1)))
     self.manager._save_document(
         SurveyResponseDocument(channel="transport",
                                destination=12345,
                                form_model_id=self.project.id,
                                values={
                                    'Q1': 'ans12',
                                    'Q2': 'ans22'
                                },
                                owner_uid=self.ds1.id,
                                status=False,
                                error_message="",
                                data_record_id='1234567',
                                event_time=datetime.datetime(2011, 3, 2)))
     self.manager._save_document(
         SurveyResponseDocument(channel="transport",
                                destination=12345,
                                form_model_id=self.project.id,
                                values={
                                    'Q1': 'ans123',
                                    'Q2': 'ans222'
                                },
                                owner_uid=self.ds2.id,
                                status=False,
                                error_message="",
                                data_record_id='1234567',
                                event_time=datetime.datetime(2011, 3, 3)))
Ejemplo n.º 3
0
def run(manager):
    sync_views(manager)
    mangrove_intializer.run(manager)
    create_default_reporter(manager)
    create_custom_message_templates(manager)
Ejemplo n.º 4
0
def InitializeDB():
    dbm = DatabaseManager(server="http://localhost:5984", database="assignment")
    print "Connected to", dbm.url, dbm.database_name
    initializer.run(dbm)
    return dbm
Ejemplo n.º 5
0
    def setUp(self):
        MangroveTestCase.setUp(self)
        initializer.run(self.manager)
        define_type(self.manager, ["dog"])
        self.entity_type = ["clinic"]
        define_type(self.manager, self.entity_type)

        self.entity = create_entity(
            self.manager,
            entity_type=self.entity_type,
            location=["India", "Pune"],
            aggregation_paths=None,
            short_code="cli1",
        )
        self.data_record_id = self.entity.add_data(
            data=[("Name", "Ruby")], submission=dict(submission_id="1"))

        self.reporter = create_entity(
            self.manager,
            entity_type=["reporter"],
            location=["India", "Pune"],
            aggregation_paths=None,
            short_code="rep1",
        )
        self.reporter.add_data(data=[(MOBILE_NUMBER_FIELD, '1234'),
                                     (NAME_FIELD, "Test_reporter")],
                               submission=dict(submission_id="2"))

        #Web submission Form Model
        question1 = UniqueIdField(unique_id_type='clinic',
                                  name="entity_question",
                                  code="EID",
                                  label="What is associated entity")
        question2 = TextField(name="Name",
                              code="NAME",
                              label="Clinic Name",
                              defaultValue="some default value",
                              constraints=[TextLengthConstraint(4, 15)],
                              required=False)
        question3 = IntegerField(
            name="Arv stock",
            code="ARV",
            label="ARV Stock",
            constraints=[NumericRangeConstraint(min=15, max=120)],
            required=False)
        question4 = SelectField(name="Color",
                                code="COL",
                                label="Color",
                                options=[("RED", 1), ("YELLOW", 2)],
                                required=False)
        self.form_model = FormModel(
            self.manager,
            name="aids",
            label="Aids form_model",
            form_code="clinic",
            fields=[question1, question2, question3, question4])
        self.form_model.save()

        #Activity Report Form Model
        question1 = UniqueIdField(unique_id_type='reporter',
                                  name="entity_question",
                                  code="EID",
                                  label="What is associated entity")
        question2 = TextField(name="Name",
                              code="NAME",
                              label="Clinic Name",
                              defaultValue="some default value",
                              constraints=[TextLengthConstraint(4, 15)])
        question3 = IntegerField(
            name="Arv stock",
            code="ARV",
            label="ARV Stock",
            constraints=[NumericRangeConstraint(min=15, max=120)])
        activity_report = FormModel(self.manager,
                                    name="report",
                                    label="reporting form_model",
                                    form_code="acp",
                                    fields=[question1, question2, question3])
        activity_report.save()

        self.web_player = WebPlayerV2(self.manager)
Ejemplo n.º 6
0
 def setUp(self):
     MangroveTestCase.setUp(self)
     self._create_entities()
     self.player = SMSPlayer(self.manager, location_tree=LocationBridge(get_location_tree(), get_loc_hierarchy=get_location_hierarchy))
     self.transport = TransportInfo(transport="sms", source="1234", destination="5678")
     initializer.run(self.manager)
Ejemplo n.º 7
0
    def setUp(self):
        MangroveTestCase.setUp(self)
        initializer.run(self.manager)

        self.entity_type = ["reporter"]
        self.telephone_number_type = DataDictType(self.manager, name='telephone_number', slug='telephone_number',
                                                  primitive_type='string')
        self.entity_id_type = DataDictType(self.manager, name='Entity Id Type', slug='entity_id', primitive_type='string')
        self.name_type = DataDictType(self.manager, name='Name', slug='name', primitive_type='string')
        self.telephone_number_type.save()
        self.name_type.save()
        self.reporter = create_entity(self.manager, entity_type=self.entity_type,
                                      location=["India", "Pune"], aggregation_paths=None, short_code="rep1",
                                      )
        self.reporter.add_data(data=[(MOBILE_NUMBER_FIELD, '1234', self.telephone_number_type),
            (NAME_FIELD, "Test_reporter", self.name_type)], submission=dict(submission_id="1"))

        question1 = TextField(name="entity_question", code="EID", label="What is associated entity",
                              entity_question_flag=True, ddtype=self.entity_id_type)
        question2 = TextField(name="Name", code="NAME", label="Clinic Name",
                              defaultValue="some default value",
                              ddtype=self.name_type, required=False)
        self.form_model = FormModel(self.manager, entity_type=self.entity_type, name="Dengue", label="Dengue form_model",
                                    form_code="clinic", type='survey', fields=[question1,question2])
        self.form_model.save()

        self.csv_data_for_activity_report = """
                                FORM_CODE,EID,NAME
                                clinic,rep1,XYZ
        """
        self.csv_data_about_reporter = """
                                FORM_CODE,t,n,l,d,m
                                REG,"reporter",Dr. A,Pune,"Description",201
        """
        self.csv_data_with_same_mobile_number = """
                                FORM_CODE,t,n,l,d,m
                                REG,"reporter",Dr. A,Pune,"Description",201
                                REG,"reporter",Dr. B,Pune,"Description",201
        """
        self.csv_data_with_exception = """
                                FORM_CODE,t,n,l,d,m
                                REG,"reporter",Dr. A,Pune,"Description",201
                                REG,"reporter",Dr. B,Pune,"Description",201
                                REG,"reporter",Dr. C,Pune,"Description",202
        """
        self.csv_data_with_missing_name = """
                                FORM_CODE,t,n,l,d,m
                                REG,"reporter",,Pune,"Description",201
        """
        self.csv_data_with_missing_type = """
                                FORM_CODE,t,n,l,d,m
                                REG,,Dr. A,Pune,"Description",201
        """
        self.csv_data_with_incorrect_mobile_number = """
                                FORM_CODE,t,n,l,d,m
                                REG,"reporter",Dr. A,Pune,"Description",2014678447676512
                                REG,"reporter",Dr. A,Pune,"Description",~!@#$%^&*()+|}
                                REG,"reporter",Dr. A,Pune,"Description",
        """
        self.csv_data_with_incorrect_GPS = """
                                FORM_CODE,t,n,g,d,m
                                REG,"reporter",Dr. A,18,"Description",201
        """
        self.csv_data_with_out_of_range_GPS_value = """
                                FORM_CODE,t,n,g,d,m
                                REG,"reporter",Dr. A,-95 48,"Description",201
                                REG,"reporter",Dr. A,-18 184,"Description",201
        """
        self.csv_data_without_form_code= """
                                FORM_CODE,t,n,g,d,m
                                ,"reporter",Dr. A,-95 48,"Description",201
                                ABC,"reporter",Dr. A,-95 48,"Description",201
        """
        self.parser = CsvParser()
        self.file_player = FilePlayer(self.manager,self.parser, Channel.CSV, LocationBridge(DummyLocationTree(),dummy_get_location_hierarchy))
Ejemplo n.º 8
0
def run(manager):
    sync_views(manager)
    mangrove_intializer.run(manager)
    create_default_reporter(manager)
 def setUp(self):
     MangroveTestCase.setUp(self)
     initializer.run(self.manager)
 def InitDb(self, server, database):
     self.manager = get_db_manager(server=server, database=database)
     _delete_db_and_remove_db_manager(self.manager)
     self.manager = get_db_manager(server=server, database=database)
     initializer.run(self.manager)