test: add secret filtering

This commit is contained in:
Ryan 2025-01-08 13:52:27 -05:00
parent bb3c379755
commit 50651db89e
Signed by: ErrorNoInternet
GPG Key ID: 2486BFB7B1E6A4A3
3 changed files with 25 additions and 4 deletions

View File

@ -1,3 +1,3 @@
from . import test_format_duration from . import test_filter_secrets, test_format_duration
__all__ = ["test_format_duration"] __all__ = ["test_format_duration", "test_filter_secrets"]

View File

@ -0,0 +1,21 @@
import unittest
import utils
class TestFilterSecrets(unittest.TestCase):
def test_filter_secrets(self):
secret = "PLACEHOLDER_TOKEN"
self.assertFalse(
secret in utils.filter_secrets(f"HELLO{secret}WORLD", {"TOKEN": secret})
)
self.assertFalse(secret in utils.filter_secrets(secret, {"TOKEN": secret}))
self.assertFalse(
secret in utils.filter_secrets(f"123{secret}", {"TOKEN": secret})
)
self.assertFalse(
secret in utils.filter_secrets(f"{secret}{secret}", {"TOKEN": secret})
)
self.assertFalse(
secret in utils.filter_secrets(f"{secret}@#(*&*$)", {"TOKEN": secret})
)

View File

@ -112,8 +112,8 @@ async def invalid_user_handler(interaction):
) )
def filter_secrets(text: str) -> str: def filter_secrets(text: str, secrets=constants.SECRETS) -> str:
for secret_name, secret in constants.SECRETS.items(): for secret_name, secret in secrets.items():
if not secret: if not secret:
continue continue
text = text.replace(secret, f"<{secret_name}>") text = text.replace(secret, f"<{secret_name}>")