Example #1
0
    def test_soft_deleting_expired_secrets(self, project):
        """Test soft deleting secrets that are expired"""

        current_time = datetime.datetime.utcnow()
        tomorrow = current_time + datetime.timedelta(days=1)
        yesterday = current_time - datetime.timedelta(days=1)

        not_expired_secret = _setup_entry('secret', project=project)
        expired_secret = _setup_entry('secret', project=project)
        not_expired_secret.expiration = tomorrow
        expired_secret.expiration = yesterday

        # Create children for expired secret
        expired_secret_store_metadatum = _setup_entry('secret_metadatum',
                                                      secret=expired_secret)
        expired_secret_user_metadatum = _setup_entry('secret_user_metadatum',
                                                     secret=expired_secret)
        kek_datum = _setup_entry('kek_datum', project=project)
        expired_enc_datum = _setup_entry('encrypted_datum',
                                         secret=expired_secret,
                                         kek_datum=kek_datum)
        container = _setup_entry('container', project=project)
        expired_container_secret = _setup_entry('container_secret',
                                                container=container,
                                                secret=expired_secret)
        expired_acl_secret = _setup_entry('acl_secret',
                                          secret=expired_secret,
                                          user_ids=["fern", "chris"])

        clean.soft_delete_expired_secrets(current_time)
        self.assertTrue(_entry_is_soft_deleted(expired_secret))
        self.assertFalse(_entry_is_soft_deleted(not_expired_secret))

        # Make sure the children of the expired secret are soft deleted as well
        self.assertTrue(_entry_is_soft_deleted(expired_enc_datum))
        self.assertTrue(_entry_is_soft_deleted(expired_container_secret))
        self.assertTrue(_entry_is_soft_deleted(expired_secret_store_metadatum))
        self.assertTrue(_entry_is_soft_deleted(expired_secret_user_metadatum))
        self.assertFalse(_entry_exists(expired_acl_secret))
Example #2
0
    def test_soft_deleting_expired_secrets(self, project):
        """Test soft deleting secrets that are expired"""

        current_time = datetime.datetime.utcnow()
        tomorrow = current_time + datetime.timedelta(days=1)
        yesterday = current_time - datetime.timedelta(days=1)

        not_expired_secret = _setup_entry('secret', project=project)
        expired_secret = _setup_entry('secret', project=project)
        not_expired_secret.expiration = tomorrow
        expired_secret.expiration = yesterday

        # Create children for expired secret
        expired_secret_store_metadatum = _setup_entry('secret_metadatum',
                                                      secret=expired_secret)
        expired_secret_user_metadatum = _setup_entry('secret_user_metadatum',
                                                     secret=expired_secret)
        kek_datum = _setup_entry('kek_datum', project=project)
        expired_enc_datum = _setup_entry('encrypted_datum',
                                         secret=expired_secret,
                                         kek_datum=kek_datum)
        container = _setup_entry('container', project=project)
        expired_container_secret = _setup_entry('container_secret',
                                                container=container,
                                                secret=expired_secret)
        expired_acl_secret = _setup_entry('acl_secret',
                                          secret=expired_secret,
                                          user_ids=["fern", "chris"])

        clean.soft_delete_expired_secrets(current_time)
        self.assertTrue(_entry_is_soft_deleted(expired_secret))
        self.assertFalse(_entry_is_soft_deleted(not_expired_secret))

        # Make sure the children of the expired secret are soft deleted as well
        self.assertTrue(_entry_is_soft_deleted(expired_enc_datum))
        self.assertTrue(_entry_is_soft_deleted(expired_container_secret))
        self.assertTrue(_entry_is_soft_deleted(expired_secret_store_metadatum))
        self.assertTrue(_entry_is_soft_deleted(expired_secret_user_metadatum))
        self.assertFalse(_entry_exists(expired_acl_secret))