def test_oai_data_upsert_raises_error_if_save_failed(self, mock_save):
        # Arrange
        mock_save.side_effect = Exception()

        # Act # Assert
        with self.assertRaises(Exception):
            oai_data_api.upsert(self.mock_oai_data)
def post_delete_data(sender, document, **kwargs):
    """ Method executed after a deletion of a Data object.
    Args:
        sender: Class.
        document: OaiData document.
        **kwargs: Args.

    """
    try:
        oai_data = oai_data_api.get_by_data(document)
        oai_data.oai_date_stamp = datetime.now()
        oai_data.status = status.DELETED

        oai_data_api.upsert(oai_data)
    except Exception as e:
        pass
    def test_oai_data_upsert_returns_object(self, mock_save):
        # Arrange
        mock_save.return_value = self.mock_oai_data

        # Act
        result = oai_data_api.upsert(self.mock_oai_data)

        # Assert
        self.assertIsInstance(result, OaiData)
def post_delete_data(sender, document, **kwargs):
    """Method executed after a deletion of a Data object.
    Args:
        sender: Class.
        document: OaiData document.
        **kwargs: Args.

    """
    try:
        oai_data = oai_data_api.get_by_data(document)
        oai_data.oai_date_stamp = datetime.now()
        oai_data.status = status.DELETED

        oai_data_api.upsert(oai_data)
    except exceptions.DoesNotExist:
        logger.warning(
            "post_delete_data: no oai data found for the given document: {0}".
            format(str(document.id)))
    except Exception as e:
        logger.warning("post_delete_data threw an exception: {0}".format(
            str(e)))