コード例 #1
0
    def user_mutations(self, uri):

        filter_manager = SearchViewFilters()

        dataset = UsersMutationsDataset.by_uri(uri)

        if dataset.owner and dataset.owner != current_user:
            current_app.login_manager.unauthorized()

        response = make_response(
            template('search/dataset.html',
                     mutation_types=Mutation.types,
                     results=dataset.data.results,
                     widgets=make_widgets(filter_manager),
                     without_mutations=dataset.data.without_mutations,
                     query=dataset.data.query,
                     badly_formatted=dataset.data.badly_formatted,
                     dataset=dataset))
        return response
コード例 #2
0
    def remove_user_mutations(self, uri):

        dataset = UsersMutationsDataset.by_uri(uri)
        name = dataset.name

        if not dataset.owner or dataset.owner != current_user:
            current_app.login_manager.unauthorized()

        try:
            dataset.remove()
        except Exception as e:
            message = 'Failed to remove dataset <b>%s</b> (%s).' % (name, uri)
            print(message, e)
            message += '<br>If the message reappears, please contact us.'
            flash(message, category='danger')
            raise abort(500)

        flash('Successfully removed <b>%s</b> dataset.' % name,
              category='success')
        return redirect(url_for('ContentManagementSystem:my_datasets'))
コード例 #3
0
    def test_init(self):
        user = User('user@domain', 'password')

        dataset = create_test_dataset(owner=user)

        assert user.datasets == [dataset]

        public_id = dataset.uri

        d = UsersMutationsDataset.query.filter_by(uri=public_id).one()

        assert d == dataset
        assert UsersMutationsDataset.by_uri(public_id) == dataset

        assert dataset.data
        assert dataset.query_size == 3

        # should be empty as no mutations where imported
        assert not dataset.mutations

        assert dataset.name == 'test'

        assert dataset.life_expectancy < timedelta(days=7)

        assert not dataset.is_expired

        update(dataset, store_until=utc_now())
        db.session.commit()

        time.sleep(2)

        assert dataset.is_expired
        d = UsersMutationsDataset.query.filter_by(is_expired=True).one()

        assert d == dataset

        u = User.query.filter_by(email='user@domain').one()
        assert u.datasets == []