Beispiel #1
0
    def tearDown(self):
        if self.get_verbosity() > 2:
            details = []
            for query in connection.queries:
                query = query["sql"]
                if "SAVEPOINT" not in query:
                    indexes = self.explain(query)
                    details.append(dict(query=query, indexes=indexes))

            for stat in details:
                print("")
                print(stat["query"])
                for table, index in stat["indexes"]:
                    print("  Index Used: %s.%s" % (table, index))

                if not len(stat["indexes"]):
                    print("  No Index Used")

            settings.DEBUG = False

        from temba.flows.models import clear_flow_users

        clear_flow_users()

        # clear any unused mock requests
        self.mock_server.mocked_requests = []
Beispiel #2
0
    def tearDown(self):
        if self.get_verbosity() > 2:
            details = []
            for query in connection.queries:
                query = query["sql"]
                if "SAVEPOINT" not in query:
                    indexes = self.explain(query)
                    details.append(dict(query=query, indexes=indexes))

            for stat in details:
                print("")
                print(stat["query"])
                for table, index in stat["indexes"]:
                    print("  Index Used: %s.%s" % (table, index))

                if not len(stat["indexes"]):
                    print("  No Index Used")

            settings.DEBUG = False

        from temba.flows.models import clear_flow_users

        clear_flow_users()

        # clear any unused mock requests
        self.mock_server.mocked_requests = []
Beispiel #3
0
    def tearDown(self):
        if self.get_verbosity() > 2:
            details = []
            for query in connection.queries:
                query = query['sql']
                if 'SAVEPOINT' not in query:
                    indexes = self.explain(query)
                    details.append(dict(query=query, indexes=indexes))

            for stat in details:
                print("")
                print(stat['query'])
                for table, index in stat['indexes']:
                    print('  Index Used: %s.%s' % (table, index))

                if not len(stat['indexes']):
                    print('  No Index Used')

            settings.DEBUG = False

        from temba.flows.models import clear_flow_users
        clear_flow_users()
Beispiel #4
0
    def setUp(self):
        self.maxDiff = 4096
        self.mock_server = mock_server

        # if we are super verbose, turn on debug for sql queries
        if self.get_verbosity() > 2:
            settings.DEBUG = True

        # make sure we start off without any service users
        Group.objects.get(name="Service Users").user_set.clear()

        self.clear_cache()

        self.create_anonymous_user()

        self.superuser = User.objects.create_superuser(username="******",
                                                       email="*****@*****.**",
                                                       password="******")

        # create different user types
        self.non_org_user = self.create_user("NonOrg")
        self.user = self.create_user("User", ("Viewers", ))
        self.editor = self.create_user("Editor")
        self.admin = self.create_user("Administrator")
        self.surveyor = self.create_user("Surveyor")
        self.customer_support = self.create_user("support",
                                                 ("Customer Support", ))

        # setup admin boundaries for Rwanda
        self.country = AdminBoundary.create(osm_id="171496",
                                            name="Rwanda",
                                            level=0)
        self.state1 = AdminBoundary.create(osm_id="1708283",
                                           name="Kigali City",
                                           level=1,
                                           parent=self.country)
        self.state2 = AdminBoundary.create(osm_id="171591",
                                           name="Eastern Province",
                                           level=1,
                                           parent=self.country)
        self.district1 = AdminBoundary.create(osm_id="R1711131",
                                              name="Gatsibo",
                                              level=2,
                                              parent=self.state2)
        self.district2 = AdminBoundary.create(osm_id="1711163",
                                              name="Kayônza",
                                              level=2,
                                              parent=self.state2)
        self.district3 = AdminBoundary.create(osm_id="3963734",
                                              name="Nyarugenge",
                                              level=2,
                                              parent=self.state1)
        self.district4 = AdminBoundary.create(osm_id="1711142",
                                              name="Rwamagana",
                                              level=2,
                                              parent=self.state2)
        self.ward1 = AdminBoundary.create(osm_id="171113181",
                                          name="Kageyo",
                                          level=3,
                                          parent=self.district1)
        self.ward2 = AdminBoundary.create(osm_id="171116381",
                                          name="Kabare",
                                          level=3,
                                          parent=self.district2)
        self.ward3 = AdminBoundary.create(osm_id="VMN.49.1_1",
                                          name="Bukure",
                                          level=3,
                                          parent=self.district4)

        self.country.update_path()

        self.org = Org.objects.create(
            name="Temba",
            timezone=pytz.timezone("Africa/Kigali"),
            country=self.country,
            brand=settings.DEFAULT_BRAND,
            created_by=self.user,
            modified_by=self.user,
        )

        self.org.initialize(topup_size=1000)

        # add users to the org
        self.user.set_org(self.org)
        self.org.viewers.add(self.user)

        self.editor.set_org(self.org)
        self.org.editors.add(self.editor)

        self.admin.set_org(self.org)
        self.org.administrators.add(self.admin)

        self.surveyor.set_org(self.org)
        self.org.surveyors.add(self.surveyor)

        self.superuser.set_org(self.org)

        # welcome topup with 1000 credits
        self.welcome_topup = self.org.topups.all()[0]

        # a single Android channel
        self.channel = Channel.create(
            self.org,
            self.user,
            "RW",
            "A",
            name="Test Channel",
            address="+250785551212",
            device="Nexus 5X",
            secret="12345",
            config={Channel.CONFIG_FCM_ID: "123"},
        )

        # don't cache anon user between tests
        from temba import utils

        utils._anon_user = None
        clear_flow_users()
Beispiel #5
0
 def tearDown(self):
     clear_flow_users()
Beispiel #6
0
    def setUpOrgs(self):
        # make sure we start off without any service users
        Group.objects.get(name="Service Users").user_set.clear()

        self.clear_cache()

        self.create_anonymous_user()

        self.superuser = User.objects.create_superuser(username="******",
                                                       email="*****@*****.**",
                                                       password="******")

        # create different user types
        self.non_org_user = self.create_user("NonOrg")
        self.user = self.create_user("User", ("Viewers", ))
        self.editor = self.create_user("Editor")
        self.admin = self.create_user("Administrator")
        self.surveyor = self.create_user("Surveyor")
        self.customer_support = self.create_user("support",
                                                 ("Customer Support", ))

        self.org = Org.objects.create(
            name="Temba",
            timezone=pytz.timezone("Africa/Kigali"),
            brand=settings.DEFAULT_BRAND,
            created_by=self.user,
            modified_by=self.user,
        )
        self.org.initialize(topup_size=1000)

        # add users to the org
        self.user.set_org(self.org)
        self.org.viewers.add(self.user)

        self.editor.set_org(self.org)
        self.org.editors.add(self.editor)

        self.admin.set_org(self.org)
        self.org.administrators.add(self.admin)

        self.surveyor.set_org(self.org)
        self.org.surveyors.add(self.surveyor)

        # setup a second org with a single admin
        self.admin2 = self.create_user("Administrator2")
        self.org2 = Org.objects.create(
            name="Trileet Inc.",
            timezone=pytz.timezone("Africa/Kigali"),
            brand="rapidpro.io",
            created_by=self.admin2,
            modified_by=self.admin2,
        )
        self.org2.initialize(topup_size=1000)

        self.org2.administrators.add(self.admin2)
        self.admin2.set_org(self.org)

        self.superuser.set_org(self.org)

        # a single Android channel
        self.channel = Channel.create(
            self.org,
            self.user,
            "RW",
            "A",
            name="Test Channel",
            address="+250785551212",
            device="Nexus 5X",
            secret="12345",
            config={Channel.CONFIG_FCM_ID: "123"},
        )

        # don't cache anon user between tests
        from temba import utils

        utils._anon_user = None

        clear_flow_users()
Beispiel #7
0
    def setUp(self):
        self.mock_server = mock_server

        # if we are super verbose, turn on debug for sql queries
        if self.get_verbosity() > 2:
            settings.DEBUG = True

        # make sure we start off without any service users
        Group.objects.get(name='Service Users').user_set.clear()

        self.clear_cache()

        self.superuser = User.objects.create_superuser(username="******",
                                                       email="*****@*****.**",
                                                       password="******")

        # create different user types
        self.non_org_user = self.create_user("NonOrg")
        self.user = self.create_user("User")
        self.editor = self.create_user("Editor")
        self.admin = self.create_user("Administrator")
        self.surveyor = self.create_user("Surveyor")

        # setup admin boundaries for Rwanda
        self.country = AdminBoundary.objects.create(osm_id='171496',
                                                    name='Rwanda',
                                                    level=0)
        self.state1 = AdminBoundary.objects.create(osm_id='1708283',
                                                   name='Kigali City',
                                                   level=1,
                                                   parent=self.country)
        self.state2 = AdminBoundary.objects.create(osm_id='171591',
                                                   name='Eastern Province',
                                                   level=1,
                                                   parent=self.country)
        self.district1 = AdminBoundary.objects.create(osm_id='1711131',
                                                      name='Gatsibo',
                                                      level=2,
                                                      parent=self.state2)
        self.district2 = AdminBoundary.objects.create(osm_id='1711163',
                                                      name='Kayônza',
                                                      level=2,
                                                      parent=self.state2)
        self.district3 = AdminBoundary.objects.create(osm_id='3963734',
                                                      name='Nyarugenge',
                                                      level=2,
                                                      parent=self.state1)
        self.district4 = AdminBoundary.objects.create(osm_id='1711142',
                                                      name='Rwamagana',
                                                      level=2,
                                                      parent=self.state2)
        self.ward1 = AdminBoundary.objects.create(osm_id='171113181',
                                                  name='Kageyo',
                                                  level=3,
                                                  parent=self.district1)
        self.ward2 = AdminBoundary.objects.create(osm_id='171116381',
                                                  name='Kabare',
                                                  level=3,
                                                  parent=self.district2)
        self.ward3 = AdminBoundary.objects.create(osm_id='171114281',
                                                  name='Bukure',
                                                  level=3,
                                                  parent=self.district4)

        self.country.update_path()

        self.org = Org.objects.create(name="Temba",
                                      timezone=pytz.timezone("Africa/Kigali"),
                                      country=self.country,
                                      brand=settings.DEFAULT_BRAND,
                                      created_by=self.user,
                                      modified_by=self.user)

        self.org.initialize(topup_size=1000)

        # add users to the org
        self.user.set_org(self.org)
        self.org.viewers.add(self.user)

        self.editor.set_org(self.org)
        self.org.editors.add(self.editor)

        self.admin.set_org(self.org)
        self.org.administrators.add(self.admin)

        self.surveyor.set_org(self.org)
        self.org.surveyors.add(self.surveyor)

        self.superuser.set_org(self.org)

        # welcome topup with 1000 credits
        self.welcome_topup = self.org.topups.all()[0]

        # a single Android channel
        self.channel = Channel.create(self.org,
                                      self.user,
                                      'RW',
                                      'A',
                                      name="Test Channel",
                                      address="+250785551212",
                                      device="Nexus 5X",
                                      secret="12345",
                                      gcm_id="123")

        # don't cache anon user between tests
        from temba import utils
        utils._anon_user = None
        clear_flow_users()

        # reset our simulation to False
        Contact.set_simulation(False)
Beispiel #8
0
    def setUp(self):
        self.maxDiff = 4096
        self.mock_server = mock_server

        # if we are super verbose, turn on debug for sql queries
        if self.get_verbosity() > 2:
            settings.DEBUG = True

        # make sure we start off without any service users
        Group.objects.get(name="Service Users").user_set.clear()

        self.clear_cache()

        self.create_anonymous_user()

        self.superuser = User.objects.create_superuser(username="******", email="*****@*****.**", password="******")

        # create different user types
        self.non_org_user = self.create_user("NonOrg")
        self.user = self.create_user("User")
        self.editor = self.create_user("Editor")
        self.admin = self.create_user("Administrator")
        self.surveyor = self.create_user("Surveyor")
        self.customer_support = self.create_user("support", ("Customer Support",))

        # setup admin boundaries for Rwanda
        self.country = AdminBoundary.create(osm_id="171496", name="Rwanda", level=0)
        self.state1 = AdminBoundary.create(osm_id="1708283", name="Kigali City", level=1, parent=self.country)
        self.state2 = AdminBoundary.create(osm_id="171591", name="Eastern Province", level=1, parent=self.country)
        self.district1 = AdminBoundary.create(osm_id="R1711131", name="Gatsibo", level=2, parent=self.state2)
        self.district2 = AdminBoundary.create(osm_id="1711163", name="Kayônza", level=2, parent=self.state2)
        self.district3 = AdminBoundary.create(osm_id="3963734", name="Nyarugenge", level=2, parent=self.state1)
        self.district4 = AdminBoundary.create(osm_id="1711142", name="Rwamagana", level=2, parent=self.state2)
        self.ward1 = AdminBoundary.create(osm_id="171113181", name="Kageyo", level=3, parent=self.district1)
        self.ward2 = AdminBoundary.create(osm_id="171116381", name="Kabare", level=3, parent=self.district2)
        self.ward3 = AdminBoundary.create(osm_id="VMN.49.1_1", name="Bukure", level=3, parent=self.district4)

        self.country.update_path()

        self.org = Org.objects.create(
            name="Temba",
            timezone=pytz.timezone("Africa/Kigali"),
            country=self.country,
            brand=settings.DEFAULT_BRAND,
            created_by=self.user,
            modified_by=self.user,
        )

        self.org.initialize(topup_size=1000)

        # add users to the org
        self.user.set_org(self.org)
        self.org.viewers.add(self.user)

        self.editor.set_org(self.org)
        self.org.editors.add(self.editor)

        self.admin.set_org(self.org)
        self.org.administrators.add(self.admin)

        self.surveyor.set_org(self.org)
        self.org.surveyors.add(self.surveyor)

        self.superuser.set_org(self.org)

        # welcome topup with 1000 credits
        self.welcome_topup = self.org.topups.all()[0]

        # a single Android channel
        self.channel = Channel.create(
            self.org,
            self.user,
            "RW",
            "A",
            name="Test Channel",
            address="+250785551212",
            device="Nexus 5X",
            secret="12345",
            gcm_id="123",
        )

        # don't cache anon user between tests
        from temba import utils

        utils._anon_user = None
        clear_flow_users()

        # reset our simulation to False
        Contact.set_simulation(False)