예제 #1
0
    def setUp(self):
        self.instance = make_instance()

        self.user = make_user(username='******')

        self.instance_user = make_user(self.instance, 'instance_user')
        self.client.get('/accounts/logout/')
예제 #2
0
    def setUp(self):
        self.instance = make_instance()

        self.user = make_user(username='******')

        self.instance_user = make_user(self.instance, 'instance_user')
        self.client.get('/accounts/logout/')
    def setUp(self):
        self.user = make_user(username='******', password='******')
        self.instance = make_instance()

        # Create an admin user to verify that not all admins get notifications
        self.admin = make_user(instance=self.instance, username='******',
                               admin=True)
    def setUp(self):
        self.user = make_user(username='******', password='******')
        self.instance = make_instance()

        # Create an admin user to verify that not all admins get notifications
        self.admin = make_user(instance=self.instance,
                               username='******',
                               admin=True)
    def setUp(self):
        self.user = make_user(username='******', password='******')
        self.instance = make_instance()

        # Create two admin users so emails will have somewhere to go
        self.admin1 = make_user(instance=self.instance,
                                username='******',
                                admin=True)
        self.admin2 = make_user(instance=self.instance,
                                username='******',
                                admin=True)
예제 #6
0
    def setUp(self):
        self.instance = make_instance()

        self.user = make_user(username='******', password='******')

        self.role = Role(name='role', instance=self.instance, rep_thresh=0)
        self.role.save()

        self.user_perm, __ = FieldPermission.objects.get_or_create(
            model_name='Plot', field_name='width',
            permission_level=FieldPermission.NONE,
            role=self.role, instance=self.instance)

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

        inst_role = Role(name='inst def role',
                         instance=self.instance,
                         rep_thresh=0)
        inst_role.save()

        self.inst_perm, __ = FieldPermission.objects.get_or_create(
            model_name='Plot', field_name='width',
            permission_level=FieldPermission.NONE,
            role=inst_role, instance=self.instance)

        self.instance.default_role = inst_role
        self.instance.save()

        self.plot = Plot(instance=self.instance)
예제 #7
0
    def setUp(self):

        create_mock_system_user()

        super(LoginLogoutTest, self).setUp()
        self.user = make_user(username='******', password='******')
        self.profile = RegistrationProfile.objects.create_profile(self.user)
    def setUp(self):
        self.instance = make_instance()

        self.user = make_user(username='******', password='******')

        self.role = Role(name='role', instance=self.instance, rep_thresh=0)
        self.role.save()

        self.user_perm, __ = FieldPermission.objects.get_or_create(
            model_name='Plot', field_name='width',
            permission_level=FieldPermission.NONE,
            role=self.role, instance=self.instance)

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

        inst_role = Role(name='inst def role',
                         instance=self.instance,
                         rep_thresh=0)
        inst_role.save()

        self.inst_perm, __ = FieldPermission.objects.get_or_create(
            model_name='Plot', field_name='width',
            permission_level=FieldPermission.NONE,
            role=inst_role, instance=self.instance)

        self.instance.default_role = inst_role
        self.instance.save()

        self.plot = Plot(instance=self.instance)
예제 #9
0
    def test_plot_is_writable_if_can_create_tree(self):
        self.commander_user = make_commander_user(self.instance)
        self.commander_role = \
            self.commander_user.get_instance_user(self.instance).role
        self.tree_only_user = make_user(self.instance)
        self.tree_only_role = self.instance.default_role

        content_type = ContentType.objects.get_for_model(Tree)
        add_tree_perm = Permission.objects.get(content_type=content_type,
                                               codename='add_tree')
        self.tree_only_role.instance_permissions.add(add_tree_perm)
        self.tree_only_role.save()

        self.p = Point(-8515941.0, 4953519.0)
        self.plot = Plot(instance=self.instance, width=12, geom=self.p)
        self.plot.save_with_user(self.commander_user)

        plot2 = Plot(instance=self.instance, width=12, geom=self.p)
        self.assertRaises(AuthorizeException,
                          plot2.save_with_user,
                          self.tree_only_user)

        self.tree = Tree(instance=self.instance, plot=self.plot)
        self.tree.save_with_user(self.tree_only_user)

        self.assertTrue(self.tree.user_can_create(self.tree_only_user))

        # The plot should be writable if the user can create a tree
        self.assertTrue(perms.map_feature_is_writable(
            self.tree_only_role,
            self.plot))
예제 #10
0
    def test_plot_is_not_deletable(self):
        user_no = make_user(instance=self.instance,
                            make_role=lambda inst: self.role_no)
        plot = Plot(instance=self.instance)

        self.assertFalse(
            perms.is_deletable(user_no.get_instance_user(self.instance), plot))
예제 #11
0
    def test_plot_is_not_deletable(self):
        user_no = make_user(instance=self.instance,
                            make_role=lambda inst: self.role_no)
        plot = Plot(instance=self.instance)

        self.assertFalse(
            perms.is_deletable(user_no.get_instance_user(self.instance),
                               plot))
예제 #12
0
 def test_user_can_create_rainbarrel_photo(self):
     self._add_builtin_permission(self.role_yes, MapFeaturePhoto,
                                  'add_rainbarrelphoto')
     rainbarrel = self._create_rainbarrel_return_map_feature()
     user_yes = make_user(instance=self.instance,
                          make_role=lambda inst: self.role_yes)
     photo = MapFeaturePhoto(instance=self.instance, map_feature=rainbarrel)
     photo.set_image(self.load_resource('tree1.gif'))
     self.assertTrue(photo.user_can_create(user_yes))
예제 #13
0
    def test_plot_is_deletable(self):
        self._add_builtin_permission(self.role_yes, Plot, 'delete_plot')

        user_yes = make_user(instance=self.instance,
                             make_role=lambda inst: self.role_yes)
        plot = Plot(instance=self.instance)

        self.assertTrue(
            perms.is_deletable(user_yes.get_instance_user(self.instance),
                               plot))
예제 #14
0
    def test_plot_is_deletable(self):
        self._add_builtin_permission(self.role_yes, Plot, 'delete_plot')

        user_yes = make_user(instance=self.instance,
                             make_role=lambda inst: self.role_yes)
        plot = Plot(instance=self.instance)

        self.assertTrue(
            perms.is_deletable(user_yes.get_instance_user(self.instance),
                               plot))
예제 #15
0
 def test_user_can_create_rainbarrel_photo(self):
     self._add_builtin_permission(self.role_yes, MapFeaturePhoto,
                                  'add_rainbarrelphoto')
     rainbarrel = self._create_rainbarrel_return_map_feature()
     user_yes = make_user(instance=self.instance,
                          make_role=lambda inst: self.role_yes)
     photo = MapFeaturePhoto(instance=self.instance,
                             map_feature=rainbarrel)
     photo.set_image(self.load_resource('tree1.gif'))
     self.assertTrue(photo.user_can_create(user_yes))
예제 #16
0
    def test_user_can_delete_rainbarrel_photo(self):
        rainbarrel = self._create_rainbarrel_return_map_feature()
        image = self.load_resource('tree1.gif')

        photo = rainbarrel.add_photo(image, self.commander)

        self._add_builtin_permission(self.role_yes, MapFeaturePhoto,
                                     'delete_rainbarrelphoto')
        user_yes = make_user(instance=self.instance,
                             make_role=lambda inst: self.role_yes)
        self.assertTrue(photo.user_can_delete(user_yes))
예제 #17
0
    def setUp(self):
        clear_caches()
        self.instance = make_instance()
        self.user = make_commander_user(self.instance)
        self.role = self.user.get_role(self.instance)

        self.simple_user = make_user()
        default_role = self.instance.default_role
        FieldPermission(model_name='Plot', field_name='owner_orig_id',
                        role=default_role, instance=self.instance,
                        permission_level=READ).save()
예제 #18
0
    def test_user_can_delete_rainbarrel_photo(self):
        rainbarrel = self._create_rainbarrel_return_map_feature()
        image = self.load_resource('tree1.gif')

        photo = rainbarrel.add_photo(image, self.commander)

        self._add_builtin_permission(self.role_yes, MapFeaturePhoto,
                                     'delete_rainbarrelphoto')
        user_yes = make_user(instance=self.instance,
                             make_role=lambda inst: self.role_yes)
        self.assertTrue(photo.user_can_delete(user_yes))
예제 #19
0
 def test_user_cannot_create_rainbarrel_photo(self):
     self._add_builtin_permission(self.role_no, RainBarrel,
                                  'add_rainbarrel')
     self._add_builtin_permission(self.role_no, Bioswale, 'add_bioswale')
     self._add_builtin_permission(self.role_no, MapFeaturePhoto,
                                  'add_bioswalephoto')
     rainbarrel = self._create_rainbarrel_return_map_feature()
     user_no = make_user(instance=self.instance,
                         make_role=lambda inst: self.role_no)
     photo = MapFeaturePhoto(instance=self.instance, map_feature=rainbarrel)
     photo.set_image(self.load_resource('tree1.gif'))
     self.assertFalse(photo.user_can_create(user_no))
예제 #20
0
 def test_user_can_create_tree_photo(self):
     self._add_builtin_permission(self.role_yes, TreePhoto, 'add_treephoto')
     commander = make_commander_user(self.instance)
     plot = Plot(instance=self.instance, geom=self.p)
     plot.save_with_user(commander)
     tree = Tree(plot=plot, instance=self.instance)
     tree.save_with_user(commander)
     user_yes = make_user(instance=self.instance,
                          make_role=lambda inst: self.role_yes)
     photo = TreePhoto(instance=self.instance, map_feature=plot, tree=tree)
     photo.set_image(self.load_resource('tree1.gif'))
     self.assertTrue(photo.user_can_create(user_yes))
예제 #21
0
 def test_user_can_create_tree_photo(self):
     self._add_builtin_permission(self.role_yes, TreePhoto, 'add_treephoto')
     commander = make_commander_user(self.instance)
     plot = Plot(instance=self.instance, geom=self.p)
     plot.save_with_user(commander)
     tree = Tree(plot=plot, instance=self.instance)
     tree.save_with_user(commander)
     user_yes = make_user(instance=self.instance,
                          make_role=lambda inst: self.role_yes)
     photo = TreePhoto(instance=self.instance,
                       map_feature=plot, tree=tree)
     photo.set_image(self.load_resource('tree1.gif'))
     self.assertTrue(photo.user_can_create(user_yes))
예제 #22
0
    def setUp(self):
        clear_caches()
        self.instance = make_instance()
        self.user = make_commander_user(self.instance)
        self.role = self.user.get_role(self.instance)

        self.simple_user = make_user()
        default_role = self.instance.default_role
        FieldPermission(model_name='Plot',
                        field_name='owner_orig_id',
                        role=default_role,
                        instance=self.instance,
                        permission_level=READ).save()
예제 #23
0
    def test_user_cannot_delete_tree_photo(self):
        commander = make_commander_user(self.instance)
        plot = Plot(instance=self.instance, geom=self.p)
        plot.save_with_user(commander)
        tree = Tree(plot=plot, instance=self.instance)
        tree.save_with_user(commander)
        image = self.load_resource('tree1.gif')

        photo = tree.add_photo(image, commander)

        user_no = make_user(instance=self.instance,
                            make_role=lambda inst: self.role_no)
        self.assertFalse(photo.user_can_delete(user_no))
예제 #24
0
    def test_user_cannot_delete_tree_photo(self):
        commander = make_commander_user(self.instance)
        plot = Plot(instance=self.instance, geom=self.p)
        plot.save_with_user(commander)
        tree = Tree(plot=plot, instance=self.instance)
        tree.save_with_user(commander)
        image = self.load_resource('tree1.gif')

        photo = tree.add_photo(image, commander)

        user_no = make_user(instance=self.instance,
                            make_role=lambda inst: self.role_no)
        self.assertFalse(photo.user_can_delete(user_no))
예제 #25
0
파일: models.py 프로젝트: mmcfarland/OTM2
    def setUp(self):
        self.instance = make_instance(name='Test Instance')

        self.species = Species(instance=self.instance,
                               common_name='Test Common Name',
                               genus='Test Genus',
                               cultivar='Test Cultivar',
                               species='Test Species')
        self.species.save_base()

        self.user = make_user(username='******', password='******')

        self.import_event = ImportEvent(imported_by=self.user)
        self.import_event.save_base()

        self.plot = Plot(geom=Point(0, 0), instance=self.instance,
                         address_street="123 Main Street")

        self.plot.save_base()

        self.tree = Tree(plot=self.plot, instance=self.instance)

        self.tree.save_base()

        self.boundary = make_simple_boundary("Test Boundary")

        self.role = make_commander_role(self.instance)
        self.role.name = "Test Role"
        self.role.save()

        self.field_permission = FieldPermission(
            model_name="Tree",
            field_name="readonly",
            permission_level=FieldPermission.READ_ONLY,
            role=self.role,
            instance=self.instance)
        self.field_permission.save_base()

        self.audit = Audit(action=Audit.Type.Update,
                           model="Tree",
                           field="readonly",
                           model_id=1,
                           user=self.user,
                           previous_value=True,
                           current_value=False)
        self.audit.save_base()

        self.reputation_metric = ReputationMetric(instance=self.instance,
                                                  model_name="Tree",
                                                  action="Test Action")
        self.reputation_metric.save_base()
예제 #26
0
 def test_user_cannot_create_rainbarrel_photo(self):
     self._add_builtin_permission(self.role_no, RainBarrel,
                                  'add_rainbarrel')
     self._add_builtin_permission(self.role_no, Bioswale,
                                  'add_bioswale')
     self._add_builtin_permission(self.role_no, MapFeaturePhoto,
                                  'add_bioswalephoto')
     rainbarrel = self._create_rainbarrel_return_map_feature()
     user_no = make_user(instance=self.instance,
                         make_role=lambda inst: self.role_no)
     photo = MapFeaturePhoto(instance=self.instance,
                             map_feature=rainbarrel)
     photo.set_image(self.load_resource('tree1.gif'))
     self.assertFalse(photo.user_can_create(user_no))
예제 #27
0
    def test_user_cannot_delete_rainbarrel_photo(self):
        rainbarrel = self._create_rainbarrel_return_map_feature()
        image = self.load_resource('tree1.gif')

        photo = rainbarrel.add_photo(image, self.commander)

        self._add_builtin_permission(self.role_no, RainBarrel,
                                     'delete_rainbarrel')
        self._add_builtin_permission(self.role_no, Bioswale, 'delete_bioswale')
        self._add_builtin_permission(self.role_no, MapFeaturePhoto,
                                     'delete_bioswalephoto')
        user_no = make_user(instance=self.instance,
                            make_role=lambda inst: self.role_no)
        self.assertFalse(photo.user_can_delete(user_no))
예제 #28
0
    def setUp(self):
        self.instance = make_instance(name='Test Instance')

        self.species = Species(instance=self.instance,
                               common_name='Test Common Name',
                               genus='Test Genus',
                               cultivar='Test Cultivar',
                               species='Test Species')
        self.species.save_base()

        self.user = make_user(username='******', password='******')

        self.plot = Plot(geom=Point(1, 1),
                         instance=self.instance,
                         address_street="123 Main Street")

        self.plot.save_base()

        self.tree = Tree(plot=self.plot, instance=self.instance)

        self.tree.save_base()

        self.boundary = make_simple_boundary("Test Boundary")

        self.role = Role(instance=self.instance,
                         name='Test Role',
                         rep_thresh=2)
        self.role.save()

        self.field_permission = FieldPermission(
            model_name="Tree",
            field_name="readonly",
            permission_level=FieldPermission.READ_ONLY,
            role=self.role,
            instance=self.instance)
        self.field_permission.save_base()

        self.audit = Audit(action=Audit.Type.Update,
                           model="Tree",
                           field="readonly",
                           model_id=1,
                           user=self.user,
                           previous_value=True,
                           current_value=False)
        self.audit.save_base()

        self.reputation_metric = ReputationMetric(instance=self.instance,
                                                  model_name="Tree",
                                                  action="Test Action")
        self.reputation_metric.save_base()
예제 #29
0
    def test_user_cannot_delete_rainbarrel_photo(self):
        rainbarrel = self._create_rainbarrel_return_map_feature()
        image = self.load_resource('tree1.gif')

        photo = rainbarrel.add_photo(image, self.commander)

        self._add_builtin_permission(self.role_no, RainBarrel,
                                     'delete_rainbarrel')
        self._add_builtin_permission(self.role_no, Bioswale,
                                     'delete_bioswale')
        self._add_builtin_permission(self.role_no, MapFeaturePhoto,
                                     'delete_bioswalephoto')
        user_no = make_user(instance=self.instance,
                            make_role=lambda inst: self.role_no)
        self.assertFalse(photo.user_can_delete(user_no))
예제 #30
0
    def test_user_can_delete_tree_photo(self):
        commander = make_commander_user(self.instance)
        plot = Plot(instance=self.instance, geom=self.p)
        plot.save_with_user(commander)
        tree = Tree(plot=plot, instance=self.instance)
        tree.save_with_user(commander)
        image = self.load_resource('tree1.gif')

        photo = tree.add_photo(image, commander)

        self._add_builtin_permission(self.role_yes, TreePhoto,
                                     'delete_treephoto')
        user_yes = make_user(instance=self.instance,
                             make_role=lambda inst: self.role_yes)
        self.assertTrue(photo.user_can_delete(user_yes))
예제 #31
0
    def test_user_can_delete_tree_photo(self):
        commander = make_commander_user(self.instance)
        plot = Plot(instance=self.instance, geom=self.p)
        plot.save_with_user(commander)
        tree = Tree(plot=plot, instance=self.instance)
        tree.save_with_user(commander)
        image = self.load_resource('tree1.gif')

        photo = tree.add_photo(image, commander)

        self._add_builtin_permission(self.role_yes, TreePhoto,
                                     'delete_treephoto')
        user_yes = make_user(instance=self.instance,
                             make_role=lambda inst: self.role_yes)
        self.assertTrue(photo.user_can_delete(user_yes))
    def setUp(self):
        create_mock_system_user()

        super(LoginLogoutTest, self).setUp()
        self.user = make_user(username='******', password='******')
        self.profile = RegistrationProfile.objects.create_profile(self.user)
    def setUp(self):
        create_mock_system_user()

        super(ForgotUsernameTest, self).setUp()
        self.user = make_user(username='******', password='******')
예제 #34
0
 def setUp(self):
     self.client.get('/accounts/logout/')
     self.username = '******'
     self.password = '******'
     self.instance = make_instance()
     self.user = make_user(username=self.username, password=self.password)
예제 #35
0
    def setUp(self):

        create_mock_system_user()

        super(ForgotUsernameTest, self).setUp()
        self.user = make_user(username='******', password='******')
예제 #36
0
 def test_udf_sets_is_editable_to_true_for_user_with_perms(self):
     user = make_user(self.instance, username='******',
                      make_role=lambda _: self.udf_role)
     self.assert_plot_udf_context_value(user, 'field.is_editable', 'True')
예제 #37
0
 def setUp(self):
     self.user = make_user(username='******', password='******')
예제 #38
0
 def setUp(self):
     self.user = make_user(username='******', password='******')
    def setUp(self):
        self.instance = make_instance()

        self.user = make_user(username='******', password='******')

        self.public_user = make_user(username='******', password='******')
예제 #40
0
파일: templatetags.py 프로젝트: heath/OTM2
    def setUp(self):
        self.instance = make_instance()

        self.user = make_user(username="******", password="******")

        self.public_user = make_user(username="******", password="******")
예제 #41
0
    def setUp(self):
        self.instance = make_instance()

        self.user = make_user(username='******', password='******')

        self.public_user = make_user(username='******', password='******')
 def test_udf_sets_is_editable_to_true_for_user_with_perms(self):
     user = make_user(self.instance, username='******',
                      make_role=lambda _: self.udf_role)
     self.assert_plot_udf_context_value(user, 'field.is_editable', 'True')
 def test_udf_sets_is_editable_to_false_for_user_without_perms(self):
     user = make_user(username='******')
     self.assert_plot_udf_context_value(user, 'field.is_editable', 'False')
예제 #44
0
파일: templatetags.py 프로젝트: heath/OTM2
 def test_udf_sets_is_visible_to_true_for_user_with_perms(self):
     user = make_user(self.instance, username="******", make_role=lambda _: self.udf_role)
     self.assert_plot_udf_context_value(user, "field.is_visible", "True")
예제 #45
0
 def test_get_instance_user_fails(self):
     user = make_user(username='******', password='******')
     self.assertEqual(user.get_instance_user(self.instance), None)
예제 #46
0
 def test_udf_sets_is_editable_to_false_for_user_without_perms(self):
     user = make_user(username='******')
     self.assert_plot_udf_context_value(user, 'field.is_editable', 'False')
예제 #47
0
파일: models.py 프로젝트: heath/OTM2
 def test_get_instance_user_fails(self):
     user = make_user(username="******", password="******")
     self.assertEqual(user.get_instance_user(self.instance), None)
예제 #48
0
파일: templatetags.py 프로젝트: heath/OTM2
 def test_udf_sets_is_editable_to_false_for_user_without_perms(self):
     user = make_user(username="******")
     self.assert_plot_udf_context_value(user, "field.is_editable", "False")
예제 #49
0
 def test_get_instance_user_fails(self):
     user = make_user(username='******', password='******')
     self.assertEqual(user.get_instance_user(self.instance), None)
예제 #50
0
 def setUp(self):
     self.client.get('/accounts/logout/')
     self.username = '******'
     self.password = '******'
     self.instance = make_instance()
     self.user = make_user(username=self.username, password=self.password)