def test_purge_reuses(self): reuse = ReuseFactory(title='test-reuse') # Upload reuse's image file = create_test_image() user = AdminFactory() self.login(user) response = self.post(url_for('api.reuse_image', reuse=reuse), {'file': (file, 'test.png')}, json=False) self.assert200(response) # Delete reuse response = self.delete(url_for('api.reuse', reuse=reuse)) self.assert204(response) user = UserFactory() transfer = Transfer.objects.create( owner=user, recipient=user, subject=reuse, comment='comment', ) tasks.purge_reuses() assert Transfer.objects.filter(id=transfer.id).count() == 0 # Check reuse's image is deleted self.assertEqual(list(storages.images.list_files()), []) deleted_reuse = Reuse.objects(title='test-reuse').first() self.assertIsNone(deleted_reuse)
def purge(): '''permanently remove data flagged as deleted''' log.info('Purging datasets') purge_datasets() log.info('Purging reuses') purge_reuses() log.info('Purging organizations') purge_organizations() log.info('Done')
def purge(datasets=False, reuses=False, organizations=False): ''' Permanently remove data flagged as deleted. If no model flag is given, all models are purged. ''' purge_all = not any((datasets, reuses, organizations)) if purge_all or datasets: log.info('Purging datasets') purge_datasets() if purge_all or reuses: log.info('Purging reuses') purge_reuses() if purge_all or organizations: log.info('Purging organizations') purge_organizations() log.info('Done')
def purge(datasets, reuses, organizations): ''' Permanently remove data flagged as deleted. If no model flag is given, all models are purged. ''' purge_all = not any((datasets, reuses, organizations)) if purge_all or datasets: log.info('Purging datasets') purge_datasets() if purge_all or reuses: log.info('Purging reuses') purge_reuses() if purge_all or organizations: log.info('Purging organizations') purge_organizations() success('Done')
def test_purge_reuses(self): reuse = ReuseFactory(title='test-reuse') # Upload reuse's image file = create_test_image() user = AdminFactory() self.login(user) response = self.post(url_for('api.reuse_image', reuse=reuse), {'file': (file, 'test.png')}, json=False) self.assert200(response) # Delete reuse response = self.delete(url_for('api.reuse', reuse=reuse)) self.assert204(response) tasks.purge_reuses() # Check reuse's image is deleted self.assertEqual(list(storages.images.list_files()), []) organization = Reuse.objects(title='test-reuse').first() self.assertIsNone(organization)