Ejemplo n.º 1
0
    def test_change_org(self):
        changes = []
        old_org = Organization()
        original = Dataset(owner_org=old_org["id"])
        new_org = Organization()
        new = helpers.call_action("package_patch",
                                  id=original["id"],
                                  owner_org=new_org["id"])

        check_metadata_changes(changes, original, new)

        assert changes[0]["type"] == "org"
        assert changes[0]["method"] == "change"
        assert changes[0]["old_org_id"] == original["organization"]["id"]
        assert changes[0]["new_org_id"] == new_org["id"]
Ejemplo n.º 2
0
    def test_change_org(self):
        changes = []
        old_org = Organization()
        original = Dataset(owner_org=old_org['id'])
        new_org = Organization()
        new = helpers.call_action(u'package_patch',
                                  id=original['id'],
                                  owner_org=new_org['id'])

        check_metadata_changes(changes, original, new)

        eq(changes[0]['type'], u'org')
        eq(changes[0]['method'], u'change')
        eq(changes[0]['old_org_id'], original['organization']['id'])
        eq(changes[0]['new_org_id'], new_org['id'])
Ejemplo n.º 3
0
 def setup(self):
     super(TestWrongdoing, self).setup()
     org = Organization()
     lc = LocalCKAN()
     lc.action.recombinant_create(dataset_type='wrongdoing', owner_org=org['name'])
     rval = lc.action.recombinant_show(dataset_type='wrongdoing', owner_org=org['name'])
     self.resource_id = rval['resources'][0]['id']
Ejemplo n.º 4
0
 def setup(self):
     super(TestService, self).setup()
     org = Organization()
     lc = LocalCKAN()
     lc.action.recombinant_create(dataset_type='service', owner_org=org['name'])
     rval = lc.action.recombinant_show(dataset_type='service', owner_org=org['name'])
     self.service_id = rval['resources'][0]['id']
     self.service_std_id = rval['resources'][1]['id']
Ejemplo n.º 5
0
    def test_daily_frequency_subscriptions_of_an_org_are_not_included(self):
        org = Organization()
        factories.Subscription(organization_id=org['id'], frequency='daily')
        Dataset(owner_org=org['id'])

        notifies = get_weekly_notifications()

        eq(_get_activities(notifies), [])
Ejemplo n.º 6
0
 def setup(self):
     super(TestTravelQNil, self).setup()
     org = Organization()
     lc = LocalCKAN()
     lc.action.recombinant_create(dataset_type='travelq',
                                  owner_org=org['name'])
     rval = lc.action.recombinant_show(dataset_type='travelq',
                                       owner_org=org['name'])
     self.resource_id = rval['resources'][1]['id']
Ejemplo n.º 7
0
    def setup(cls):
        # Start data json sources server we can test harvesting against it
        reset_db()
        harvest_model.setup()
        cls.user = Sysadmin()
        cls.org = Organization()

        if not p.toolkit.check_ckan_version(min_version='2.8.0'):
            raise SkipTest('Just for CKAN 2.3')
Ejemplo n.º 8
0
    def test_subscribe_to_an_org_and_its_dataset_has_activity(self):
        org = Organization()
        subscription = factories.Subscription(organization_id=org['id'])
        subscribe_model.Subscribe.set_emails_last_sent(
            Frequency.IMMEDIATE.value, datetime.datetime.now())
        dataset = Dataset(owner_org=org['id'])

        notifies = get_immediate_notifications()

        eq(notifies.keys(), [subscription['email']])
        eq(_get_activities(notifies),
           [(u'*****@*****.**', u'new package', dataset['id'])])
Ejemplo n.º 9
0
    def test_add_org(self):
        changes = []
        original = Dataset(owner_org=None)
        new_org = Organization()
        new = helpers.call_action(u"package_patch",
                                  id=original["id"],
                                  owner_org=new_org["id"])

        check_metadata_changes(changes, original, new)

        assert changes[0]["type"] == u"org"
        assert changes[0]["method"] == u"add"
        assert changes[0]["new_org_id"] == new_org["id"]
Ejemplo n.º 10
0
    def test_make_public(self):
        changes = []
        old_org = Organization()
        original = Dataset(owner_org=old_org['id'], private=True)
        new = helpers.call_action(u'package_patch',
                                  id=original['id'],
                                  private=False)

        check_metadata_changes(changes, original, new)

        assert len(changes) == 1, changes
        eq(changes[0]['type'], u'private')
        eq(changes[0]['new'], u'Public')
Ejemplo n.º 11
0
 def setUpClass(cls):
     user = User()
     org = Organization(users=[{'capacity': 'admin', 'name': user['name']}])
     creds = Credentials(organization_id=org['id'],
                         integration=True,
                         key='key',
                         owner='owner')
     model.Session.add(creds)
     model.Session.commit()
     cls.org = org
     cls.creds = creds
     cls.user = user
     cls.api = api.API(creds.owner, creds.key)
Ejemplo n.º 12
0
    def test_make_public(self):
        changes = []
        old_org = Organization()
        original = Dataset(owner_org=old_org["id"], private=True)
        new = helpers.call_action("package_patch",
                                  id=original["id"],
                                  private=False)

        check_metadata_changes(changes, original, new)

        assert len(changes) == 1, changes
        assert changes[0]["type"] == "private"
        assert changes[0]["new"] == "Public"
Ejemplo n.º 13
0
 def test_signup_to_org_ok(self, mock_mailer):
     org = Organization()
     response = self._get_test_app().post('/subscribe/signup',
                                          params={
                                              'email': '*****@*****.**',
                                              'group': org['id']
                                          },
                                          status=302)
     assert mock_mailer.called
     assert_equal(
         response.location,
         'http://test.ckan.net/organization/{}?__no_cache__=True'.format(
             org['name']))
Ejemplo n.º 14
0
    def test_import_normal(self):
        org = Organization()
        harvest_object = HarvestObjectObj(guid=mock_ckan.DATASETS[0]['id'],
                                          content=json.dumps(
                                              mock_ckan.DATASETS[0]),
                                          job__source__owner_org=org['id'])

        harvester = CKANHarvester()
        result = harvester.import_stage(harvest_object)

        assert_equal(harvest_object.errors, [])
        assert_equal(result, True)
        assert harvest_object.package_id
        dataset = model.Package.get(harvest_object.package_id)
        assert_equal(dataset.name, mock_ckan.DATASETS[0]['name'])
Ejemplo n.º 15
0
    def test_remove_org(self):
        changes = []
        old_org = Organization()
        original = Dataset(owner_org=old_org['id'])

        import ckan.model as model
        pkg = model.Package.get(original['id'])
        pkg.owner_org = None
        pkg.save()

        new = helpers.call_action(u'package_show', id=original['id'])

        check_metadata_changes(changes, original, new)

        eq(changes[0]['type'], u'org')
        eq(changes[0]['method'], u'remove')
Ejemplo n.º 16
0
    def test_remove_org(self):
        changes = []
        old_org = Organization()
        original = Dataset(owner_org=old_org["id"])

        import ckan.model as model

        pkg = model.Package.get(original["id"])
        pkg.owner_org = None
        pkg.save()

        new = helpers.call_action("package_show", id=original["id"])

        check_metadata_changes(changes, original, new)

        assert changes[0]["type"] == "org"
        assert changes[0]["method"] == "remove"
Ejemplo n.º 17
0
    def test_org(self):
        org = Organization()
        Subscription(
            organization_id=org['id'],
            email='*****@*****.**',
            skip_verification=True,
        )
        code = email_auth.create_code('*****@*****.**')

        response = self._get_test_app().get('/subscribe/unsubscribe',
                                            params={
                                                'code': code,
                                                'organization': org['id']
                                            },
                                            status=302)

        assert_equal(
            response.location,
            'http://test.ckan.net/organization/{}?__no_cache__=True'.format(
                org['name']))
Ejemplo n.º 18
0
    def test_resource_form_create_invalid(self, mock_open):
        user = Sysadmin()
        org = Organization(user=user)
        dataset = Dataset(owner_org=org['id'])

        upload = ('upload', 'invalid.csv', INVALID_CSV)

        invalid_stream = io.BufferedReader(io.BytesIO(INVALID_CSV))

        params = {
            'name': 'test_resource_form_create_invalid',
            'url': 'https://example.com/data.csv'
        }

        with mock.patch('io.open', return_value=invalid_stream):
            response = _get_response_body(_post(self.app, NEW_RESOURCE_URL.format(dataset['id']),
                                          params, upload=[upload]))

        assert 'validation' in response
        assert 'missing-value' in response
        assert 'Row 2 has a missing value in column 4' in response
 def setup(cls):
     reset_db()
     cls.organization = Organization()