Beispiel #1
0
 def test_return_true_if_delete_data_package_success(self):
     status = MetaDataDB.delete_data_package(self.publisher_one,
                                             self.package_one)
     self.assertTrue(status)
     data = MetaDataDB.query.join(Publisher). \
         filter(Publisher.name == self.publisher_one,
                MetaDataDB.name == self.package_one).all()
     self.assertEqual(0, len(data))
     data = Publisher.query.all()
     self.assertEqual(1, len(data))
Beispiel #2
0
def purge_data_package(publisher, package):
    """
    DPR data package hard delete operation.
    This API is responsible for deletion of data package
    ---
    tags:
        - package
    parameters:
        - in: path
          name: publisher
          type: string
          required: true
          description: publisher name
        - in: path
          name: package
          type: string
          required: true
          description: package name
    responses:
        500:
            description: Internal Server Error
        200:
            description: Success Message
            schema:
                id: put_package_success
                properties:
                    status:
                        type: string
                        default: OK
    """
    try:
        bitstore = BitStore(publisher=publisher, package=package)
        status_acl = bitstore.delete_data_package()
        status_db = MetaDataDB.delete_data_package(publisher, package)
        if status_acl and status_db:
            return jsonify({"status": "OK"}), 200
        if not status_acl:
            raise Exception('Failed to delete from s3')
        if not status_db:
            raise Exception('Failed to delete from db')
    except Exception as e:
        app.logger.error(e)
        return handle_error('GENERIC_ERROR', e.message, 500)
Beispiel #3
0
 def test_return_false_if_error_occur(self):
     status = MetaDataDB.delete_data_package("fake_package",
                                             self.package_one)
     self.assertFalse(status)