예제 #1
0
 def test_get_parent_groups_up_hierarchy__from_tier_three(self):
     CreateTestData.create_group_hierarchy_test_data()
     assert names_from_groups(
         model.Group.by_name(u"nhs-wirral-ccg").get_parent_group_hierarchy(
             type=group_type
         )
     ) == ["department-of-health", "national-health-service"]
예제 #2
0
    def setup_class(cls):
        #        TestAuth.setup_class()
        CreateTestData.create_group_hierarchy_test_data()

        cls.apikeys = {}
        for user in model.Session.query(model.User):
            cls.apikeys[user.name] = str(user.apikey)

        cls.sysadmin = get_action('get_site_user')({
            'model': model,
            'ignore_auth': True
        }, {})

        cls._original_config = config.copy()

        config['ckan.auth.roles_that_cascade_to_sub_groups'] = 'admin'

        wsgiapp = ckan.config.middleware.make_app(config['global_conf'],
                                                  **config)
        cls.app = paste.fixture.TestApp(wsgiapp)

        CreateTestData.create_arbitrary(package_dicts=[{
            'name':
            'adataset',
            'groups': ['national-health-service']
        }],
                                        extra_user_names=['john'])
예제 #3
0
 def test_get_children_group_hierarchy__from_tier_two(self):
     CreateTestData.create_group_hierarchy_test_data()
     assert name_set_from_group_tuple(
         model.Group.by_name(
             u"national-health-service"
         ).get_children_group_hierarchy(type=group_type)
     ) == set(("nhs-wirral-ccg", "nhs-southwark-ccg"))
예제 #4
0
 def test_get_top_level_groups(self):
     CreateTestData.create_group_hierarchy_test_data()
     assert names_from_groups(
         model.Group.by_name(u"nhs-wirral-ccg").get_top_level_groups(
             type=group_type
         )
     ) == ["cabinet-office", "department-of-health"]
예제 #5
0
 def test_get_parents__tier_two(self):
     CreateTestData.create_group_hierarchy_test_data()
     assert names_from_groups(
         model.Group.by_name(u"national-health-service").get_parent_groups(
             type=group_type
         )
     ) == ["department-of-health"]
예제 #6
0
 def setup_class(cls):
     TestAuth.setup_class()
     CreateTestData.create_group_hierarchy_test_data()
     for user in model.Session.query(model.User):
         cls.apikeys[user.name] = str(user.apikey)
     new_authz.CONFIG_PERMISSIONS.update(ORG_HIERARCHY_PERMISSIONS)
     CreateTestData.create_arbitrary(
         package_dicts=[{"name": "adataset", "groups": ["national-health-service"]}], extra_user_names=["john"]
     )
예제 #7
0
 def test_groups_allowed_to_be_its_parent(self):
     CreateTestData.create_group_hierarchy_test_data()
     groups = model.Group.by_name(
         u"national-health-service"
     ).groups_allowed_to_be_its_parent(type=group_type)
     names = names_from_groups(groups)
     assert "department-of-health" in names
     assert "cabinet-office" in names
     assert "natonal-health-service" not in names
     assert "nhs-wirral-ccg" not in names
예제 #8
0
 def test_get_parent_groups_up_hierarchy__from_top(self):
     CreateTestData.create_group_hierarchy_test_data()
     assert (
         names_from_groups(
             model.Group.by_name(
                 u"department-of-health"
             ).get_parent_group_hierarchy(type=group_type)
         )
         == []
     )
예제 #9
0
 def setup_class(cls):
     TestAuth.setup_class()
     CreateTestData.create_group_hierarchy_test_data()
     for user in model.Session.query(model.User):
         cls.apikeys[user.name] = str(user.apikey)
     new_authz.CONFIG_PERMISSIONS.update(ORG_HIERARCHY_PERMISSIONS)
     CreateTestData.create_arbitrary(
         package_dicts= [{'name': 'adataset',
                          'groups': ['national-health-service']}],
         extra_user_names=['john'])
예제 #10
0
 def test_get_children_group_hierarchy__from_bottom_tier(self):
     CreateTestData.create_group_hierarchy_test_data()
     assert (
         name_set_from_group_tuple(
             model.Group.by_name(
                 u"nhs-wirral-ccg"
             ).get_children_group_hierarchy(type=group_type)
         )
         == set()
     )
예제 #11
0
 def test_get_children_group_hierarchy__from_top_2(self):
     CreateTestData.create_group_hierarchy_test_data()
     groups = model.Group.by_name(
         u"department-of-health"
     ).get_children_group_hierarchy(type=group_type)
     # the first group must be NHS or Food Standards Agency - i.e. on the
     # first level down
     nhs = groups[0]
     assert nhs[1] in ("national-health-service", "food-standards-agency")
     assert model.Group.get(nhs[3]).name == "department-of-health"
예제 #12
0
 def test_get_children_group_hierarchy__from_top(self):
     CreateTestData.create_group_hierarchy_test_data()
     assert name_set_from_group_tuple(
         model.Group.by_name(
             u"department-of-health"
         ).get_children_group_hierarchy(type=group_type)
     ) == set(
         (
             "national-health-service",
             "food-standards-agency",
             "nhs-wirral-ccg",
             "nhs-southwark-ccg",
         )
     )
예제 #13
0
    def setup_class(cls):

        super(TestAuth, cls).setup_class()

        CreateTestData.create_group_hierarchy_test_data()

        cls.apikeys = {}
        for user in model.Session.query(model.User):
            cls.apikeys[user.name] = str(user.apikey)

        cls.sysadmin = get_action('get_site_user')(
            {'model': model, 'ignore_auth': True}, {})

        CreateTestData.create_arbitrary(
            package_dicts= [{'name': 'adataset',
                             'groups': ['national-health-service']}],
            extra_user_names=['john'])

        cls.app = cls._get_test_app()
예제 #14
0
 def test_get_children_groups(self):
     CreateTestData.create_group_hierarchy_test_data()
     res = model.Group.by_name(u"department-of-health").get_children_groups(
         type=group_type
     )
     # check groups
     assert name_set_from_groups(res) == set(
         ("national-health-service", "food-standards-agency")
     )
     # check each group is a Group
     assert isinstance(res[0], model.Group)
     assert res[0].name in (
         "national-health-service",
         "food-standards-agency",
     )
     assert res[0].title in (
         "National Health Service",
         "Food Standards Agency",
     )
예제 #15
0
파일: test_auth.py 프로젝트: ASIMCC/ckan-1
    def setup_class(cls):

        super(TestAuth, cls).setup_class()

        CreateTestData.create_group_hierarchy_test_data()

        cls.apikeys = {}
        for user in model.Session.query(model.User):
            cls.apikeys[user.name] = str(user.apikey)

        cls.sysadmin = get_action('get_site_user')(
            {'model': model, 'ignore_auth': True}, {})

        CreateTestData.create_arbitrary(
            package_dicts= [{'name': 'adataset',
                             'groups': ['national-health-service']}],
            extra_user_names=['john'])

        cls.app = cls._get_test_app()
    def initial_data(self, apikeys, monkeypatch, ckan_config):
        monkeypatch.setitem(ckan_config,
                            "ckan.auth.roles_that_cascade_to_sub_groups",
                            "admin")
        CreateTestData.create_group_hierarchy_test_data()
        for user in model.Session.query(model.User):
            apikeys[user.name] = str(user.apikey)

        self.sysadmin = get_action("get_site_user")({
            "model": model,
            "ignore_auth": True
        }, {})

        CreateTestData.create_arbitrary(
            package_dicts=[{
                "name": "adataset",
                "groups": ["national-health-service"]
            }],
            extra_user_names=["john"],
        )
예제 #17
0
파일: test_auth.py 프로젝트: EnxEng/ckan
    def setup_class(cls):
#        TestAuth.setup_class()
        CreateTestData.create_group_hierarchy_test_data()

        cls.apikeys = {}
        for user in model.Session.query(model.User):
            cls.apikeys[user.name] = str(user.apikey)

        cls._original_config = config.copy()

        config['ckan.auth.roles_that_cascade_to_sub_groups'] = 'admin'

        wsgiapp = ckan.config.middleware.make_app(
            config['global_conf'], **config)
        cls.app = paste.fixture.TestApp(wsgiapp)

        CreateTestData.create_arbitrary(
            package_dicts= [{'name': 'adataset',
                             'groups': ['national-health-service']}],
            extra_user_names=['john'])
예제 #18
0
파일: seed.py 프로젝트: PublicaMundi/ckan
def hierarchy(ctx):
    flask_app = ctx.obj.app.apps[u'flask_app']._wsgi_app
    with flask_app.test_request_context():
        CreateTestData.create_group_hierarchy_test_data()
예제 #19
0
def hierarchy(ctx):
    flask_app = ctx.meta['flask_app']
    with flask_app.test_request_context():
        CreateTestData.create_group_hierarchy_test_data()