Esempio n. 1
0
def setupTreemapEnv():
    def local_render_to_response(*args, **kwargs):
        from django.template import loader
        from django.http import HttpResponse

        httpresponse_kwargs = {'mimetype': kwargs.pop('mimetype', None)}
        hr = HttpResponse(
            loader.render_to_string(*args, **kwargs), **httpresponse_kwargs)

        if hasattr(args[1], 'dicts'):
            hr.request_context = args[1].dicts

        return hr

    django.shortcuts.render_to_response = local_render_to_response

    instance = make_instance(is_public=True)
    create_stewardship_udfs(instance)

    make_user_with_default_role(instance, 'jim')
    commander = make_commander_user(instance, 'commander')
    make_apprentice_user(instance, 'apprentice')

    n1geom = MultiPolygon(Polygon(
        ((0, 0), (100, 0), (100, 100), (0, 100), (0, 0))))

    n2geom = MultiPolygon(
        Polygon(((0, 101), (101, 101), (101, 200), (0, 200), (0, 101))))

    n1 = Boundary(name="n1", category='blah', sort_order=4, geom=n1geom)
    n2 = Boundary(name="n2", category='blah', sort_order=4, geom=n2geom)

    n1.save()
    n2.save()

    s1 = Species(otm_code="s1", genus="testus1", species="specieius1",
                 cultivar='', instance=instance)
    s2 = Species(otm_code="s2", genus="testus2", species="specieius2",
                 cultivar='', instance=instance)
    s3 = Species(otm_code="s3", genus="testus2", species="specieius3",
                 cultivar='', instance=instance)

    s1.is_native = True
    s1.fall_conspicuous = True
    s1.flower_conspicuous = True
    s1.palatable_human = True

    s2.is_native = True
    s2.fall_conspicuous = False
    s2.flower_conspicuous = True
    s2.palatable_human = False
    s2.has_wildlife_value = True

    s3.has_wildlife_value = True

    s1.save_with_user(commander)
    s2.save_with_user(commander)
    s3.save_with_user(commander)

    return instance
Esempio n. 2
0
def setupTreemapEnv():
    def local_render_to_response(*args, **kwargs):
        from django.template import loader
        from django.http import HttpResponse

        hr = HttpResponse(loader.render_to_string(*args, **kwargs))

        if hasattr(args[1], 'dicts'):
            hr.request_context = args[1].dicts

        return hr

    django.shortcuts.render_to_response = local_render_to_response

    instance = make_instance(is_public=True)
    create_stewardship_udfs(instance)

    make_user_with_default_role(instance, 'jim')
    commander = make_commander_user(instance, 'commander')
    make_apprentice_user(instance, 'apprentice')

    n1geom = MultiPolygon(Polygon(
        ((0, 0), (100, 0), (100, 100), (0, 100), (0, 0))))

    n2geom = MultiPolygon(
        Polygon(((0, 101), (101, 101), (101, 200), (0, 200), (0, 101))))

    n1 = Boundary(name="n1", category='blah', sort_order=4, geom=n1geom)
    n2 = Boundary(name="n2", category='blah', sort_order=4, geom=n2geom)

    n1.save()
    n2.save()

    s1 = Species(otm_code="s1", genus="testus1", species="specieius1",
                 cultivar='', instance=instance)
    s2 = Species(otm_code="s2", genus="testus2", species="specieius2",
                 cultivar='', instance=instance)
    s3 = Species(otm_code="s3", genus="testus2", species="specieius3",
                 cultivar='', instance=instance)

    s1.is_native = True
    s1.fall_conspicuous = True
    s1.flower_conspicuous = True
    s1.palatable_human = True

    s2.is_native = True
    s2.fall_conspicuous = False
    s2.flower_conspicuous = True
    s2.palatable_human = False
    s2.has_wildlife_value = True

    s3.has_wildlife_value = True

    s1.save_with_user(commander)
    s2.save_with_user(commander)
    s3.save_with_user(commander)

    return instance
Esempio n. 3
0
 def setUp(self):
     self.p1 = Point(-7615441.0, 5953519.0)
     self.instance = make_instance(point=self.p1)
     self.commander_user = make_commander_user(self.instance)
     self.direct_user = make_officer_user(self.instance)
     self.pending_user = make_apprentice_user(self.instance)
     self.observer_user = make_observer_user(self.instance)
     self.outlaw_user = make_user_with_default_role(self.instance, 'outlaw')
     self.tweaker_user = make_tweaker_user(self.instance)
     self.conjurer_user = make_conjurer_user(self.instance)
Esempio n. 4
0
 def setUp(self):
     self.p1 = Point(-7615441.0, 5953519.0)
     self.instance = make_instance(point=self.p1)
     self.commander_user = make_commander_user(self.instance)
     self.direct_user = make_officer_user(self.instance)
     self.pending_user = make_apprentice_user(self.instance)
     self.observer_user = make_observer_user(self.instance)
     self.outlaw_user = make_user_with_default_role(self.instance, 'outlaw')
     self.tweaker_user = make_tweaker_user(self.instance)
     self.conjurer_user = make_conjurer_user(self.instance)
    def setUp(self):
        super(UpdatedByTest, self).setUp()
        self.other = make_commander_user(instance=self.instance,
                                         username='******')
        self.default_user = make_user_with_default_role(instance=self.instance,
                                                        username='******')

        self.other.save()
        self.default_user.save()
        self.other.refresh_from_db()
        self.default_user.refresh_from_db()
    def setUp(self):
        super(UpdatedByTest, self).setUp()
        self.other = make_commander_user(instance=self.instance,
                                         username='******')
        self.default_user = make_user_with_default_role(
            instance=self.instance, username='******')

        self.other.save()
        self.default_user.save()
        self.other.refresh_from_db()
        self.default_user.refresh_from_db()
Esempio n. 7
0
    def test_limit_fields_by_user_limits_values(self):
        user = make_user_with_default_role(self.instance, 'user')

        FieldPermission(model_name='Plot', field_name='width',
                        permission_level=FieldPermission.WRITE_DIRECTLY,
                        role=user.get_instance_user(self.instance).role,
                        instance=self.instance).save()
        qs = Plot.objects.all().limit_fields_by_user(self.instance, user)

        self.assertEqual(qs.count(), 1)
        self.assertEqual(qs[0]['width'], 3)
        self.assertEqual('NO_KEY', qs[0].get('address_street', 'NO_KEY'))
Esempio n. 8
0
    def setUp(self):
        self.p1 = Point(-8515941.0, 4953519.0)
        self.instance = make_instance(point=self.p1)
        self.commander = make_commander_user(self.instance)
        self.officer = make_officer_user(self.instance)
        self.observer = make_observer_user(self.instance)
        self.outlaw = make_user_with_default_role(self.instance, 'outlaw')

        self.plot = Plot(geom=self.p1, instance=self.instance)
        self.plot.save_with_user(self.officer)

        self.tree = Tree(plot=self.plot, instance=self.instance)
        self.tree.save_with_user(self.officer)
Esempio n. 9
0
    def setUp(self):
        self.p1 = Point(-8515941.0, 4953519.0)
        self.instance = make_instance(point=self.p1)
        self.commander = make_commander_user(self.instance)
        self.officer = make_officer_user(self.instance)
        self.observer = make_observer_user(self.instance)
        self.outlaw = make_user_with_default_role(self.instance, 'outlaw')

        self.plot = Plot(geom=self.p1, instance=self.instance)
        self.plot.save_with_user(self.officer)

        self.tree = Tree(plot=self.plot, instance=self.instance)
        self.tree.save_with_user(self.officer)
Esempio n. 10
0
    def setUp(self):
        self.p1 = Point(0, 0)
        self.p2 = Point(5, 5)

        self.instance1 = make_instance(point=self.p1)
        self.user = make_user_with_default_role(self.instance1, 'auser')
        self.global_role = self.instance1.default_role

        self.instance2 = make_instance(name='i2')
        self.instance2.save()

        iuser = InstanceUser(instance=self.instance2,
                             user=self.user,
                             role=self.global_role)
        iuser.save_with_user(self.user)

        for i in [self.instance1, self.instance2]:
            FieldPermission(model_name='Plot',
                            field_name='geom',
                            permission_level=FieldPermission.WRITE_DIRECTLY,
                            role=self.global_role,
                            instance=i).save()
            FieldPermission(model_name='Tree',
                            field_name='plot',
                            permission_level=FieldPermission.WRITE_DIRECTLY,
                            role=self.global_role,
                            instance=i).save()

        self.plot1 = Plot(geom=self.p1, instance=self.instance1)

        self.plot1.save_with_user(self.user)

        self.plot2 = Plot(geom=self.p2, instance=self.instance2)

        self.plot2.save_with_user(self.user)

        tree_combos = [
            (self.plot1, self.instance1, True),
            (self.plot1, self.instance1, False),
            (self.plot2, self.instance2, True),
            (self.plot2, self.instance2, False),
        ]

        for tc in tree_combos:
            plot, instance, readonly = tc
            t = Tree(plot=plot, instance=instance, readonly=readonly)

            t.save_with_user(self.user)
Esempio n. 11
0
    def setUp(self):
        self.p1 = Point(0, 0)
        self.p2 = Point(5, 5)

        self.instance1 = make_instance(point=self.p1)
        self.user = make_user_with_default_role(self.instance1, 'auser')
        self.global_role = self.instance1.default_role

        self.instance2 = make_instance(name='i2')
        self.instance2.save()

        iuser = InstanceUser(instance=self.instance2, user=self.user,
                             role=self.global_role)
        iuser.save_with_user(self.user)

        for i in [self.instance1, self.instance2]:
            FieldPermission(model_name='Plot', field_name='geom',
                            permission_level=FieldPermission.WRITE_DIRECTLY,
                            role=self.global_role,
                            instance=i).save()
            FieldPermission(model_name='Tree', field_name='plot',
                            permission_level=FieldPermission.WRITE_DIRECTLY,
                            role=self.global_role,
                            instance=i).save()

        self.plot1 = Plot(geom=self.p1, instance=self.instance1)

        self.plot1.save_with_user(self.user)

        self.plot2 = Plot(geom=self.p2, instance=self.instance2)

        self.plot2.save_with_user(self.user)

        tree_combos = [
            (self.plot1, self.instance1, True),
            (self.plot1, self.instance1, False),
            (self.plot2, self.instance2, True),
            (self.plot2, self.instance2, False),
        ]

        for tc in tree_combos:
            plot, instance, readonly = tc
            t = Tree(plot=plot, instance=instance, readonly=readonly)

            t.save_with_user(self.user)
Esempio n. 12
0
    def setUp(self):
        super(VisitedInstancesTests, self).setUp()
        self.instance1 = make_instance(1, is_public=True)
        self.instance2 = make_instance(2, is_public=True)
        self.instance3 = make_instance(3, is_public=False)
        self.instance4 = make_instance(4, is_public=False)

        self.user = make_user_with_default_role(self.instance, 'joe')
        self.user.set_password('joe')
        self.user.save()

        self.request = make_request(user=self.user)

        InstanceUser(instance=self.instance4,
                     user=self.user,
                     role=self.instance4.default_role).save_base()

        middleware = SessionMiddleware()
        middleware.process_request(self.request)
        self.request.session.save()
Esempio n. 13
0
    def setUp(self):
        super(VisitedInstancesTests, self).setUp()
        self.instance1 = make_instance(1, is_public=True)
        self.instance2 = make_instance(2, is_public=True)
        self.instance3 = make_instance(3, is_public=False)
        self.instance4 = make_instance(4, is_public=False)

        self.user = make_user_with_default_role(self.instance, 'joe')
        self.user.set_password('joe')
        self.user.save()

        self.request = make_request(user=self.user)

        InstanceUser(
            instance=self.instance4,
            user=self.user,
            role=self.instance4.default_role).save_base()

        middleware = SessionMiddleware()
        middleware.process_request(self.request)
        self.request.session.save()
Esempio n. 14
0
    def setUp(self):
        self.p1 = Point(0, 0)
        self.p2 = Point(5, 5)

        self.instance1 = make_instance(point=self.p1)
        self.instance1.default_role.instance_permissions.add(
            *Role.model_permissions((Plot, Tree)))

        self.user = make_user_with_default_role(self.instance1, 'auser')
        self.instance1.default_role.instance_permissions.add(
            *Role.model_permissions((Plot, Tree)))

        self.instance2 = make_instance(name='i2')
        self.instance2.save()

        iuser = InstanceUser(instance=self.instance2,
                             user=self.user,
                             role=self.instance1.default_role)
        iuser.save_with_user(self.user)

        self.plot1 = Plot(geom=self.p1, instance=self.instance1)

        self.plot1.save_with_user(self.user)

        self.plot2 = Plot(geom=self.p2, instance=self.instance2)

        self.plot2.save_with_user(self.user)

        tree_combos = [
            (self.plot1, self.instance1, True),
            (self.plot1, self.instance1, False),
            (self.plot2, self.instance2, True),
            (self.plot2, self.instance2, False),
        ]

        for plot, instance, readonly in tree_combos:
            t = Tree(plot=plot, instance=instance, readonly=readonly)

            t.save_with_user(self.user)
Esempio n. 15
0
    def setUp(self):
        self.p1 = Point(0, 0)
        self.p2 = Point(5, 5)

        self.instance1 = make_instance(point=self.p1)
        self.instance1.default_role.instance_permissions.add(
            *Role.model_permissions((Plot, Tree)))

        self.user = make_user_with_default_role(self.instance1, 'auser')
        self.instance1.default_role.instance_permissions.add(
            *Role.model_permissions((Plot, Tree)))

        self.instance2 = make_instance(name='i2')
        self.instance2.save()

        iuser = InstanceUser(instance=self.instance2, user=self.user,
                             role=self.instance1.default_role)
        iuser.save_with_user(self.user)

        self.plot1 = Plot(geom=self.p1, instance=self.instance1)

        self.plot1.save_with_user(self.user)

        self.plot2 = Plot(geom=self.p2, instance=self.instance2)

        self.plot2.save_with_user(self.user)

        tree_combos = [
            (self.plot1, self.instance1, True),
            (self.plot1, self.instance1, False),
            (self.plot2, self.instance2, True),
            (self.plot2, self.instance2, False),
        ]

        for plot, instance, readonly in tree_combos:
            t = Tree(plot=plot, instance=instance, readonly=readonly)

            t.save_with_user(self.user)
Esempio n. 16
0
 def test_get_instance_user(self):
     user = make_user_with_default_role(self.instance, 'user')
     iuser = user.get_instance_user(self.instance)
     self.assertEqual(iuser.user, user)
     self.assertEqual(iuser.instance, self.instance)
Esempio n. 17
0
 def test_limit_fields_by_user_returns_none(self):
     user = make_user_with_default_role(self.instance, 'user')
     qs = Plot.objects.all().limit_fields_by_user(self.instance, user)
     self.assertEqual(qs.count(), 0)
Esempio n. 18
0
 def test_get_instance_user(self):
     user = make_user_with_default_role(self.instance, 'user')
     iuser = user.get_instance_user(self.instance)
     self.assertEqual(iuser.user, user)
     self.assertEqual(iuser.instance, self.instance)