test_constants.py 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. from unittest import mock
  2. from sentry.constants import (
  3. INTEGRATION_ID_TO_PLATFORM_DATA,
  4. get_integration_id_for_event,
  5. get_integration_id_for_marketing_slug,
  6. )
  7. def mock_integration_ids():
  8. return mock.patch.dict(
  9. INTEGRATION_ID_TO_PLATFORM_DATA,
  10. {
  11. "java": {},
  12. "java-log4j": {},
  13. "java-log4j2": {},
  14. "java-android": {},
  15. "javascript": {},
  16. },
  17. )
  18. def test_marketing_slug_to_integration_id():
  19. with mock_integration_ids():
  20. assert get_integration_id_for_marketing_slug("java") == "java"
  21. # kotlin uses the java library, too
  22. assert get_integration_id_for_marketing_slug("kotlin") == "java"
  23. assert get_integration_id_for_marketing_slug("android") == "java-android"
  24. assert get_integration_id_for_marketing_slug("foobar") is None
  25. def test_integration_id_for_event():
  26. with mock_integration_ids():
  27. assert get_integration_id_for_event("java", "sentry-java", []) == "java"
  28. assert get_integration_id_for_event("java", "raven-java", []) == "java"
  29. assert get_integration_id_for_event("java", "raven-java:log4j", []) == "java-log4j"
  30. assert get_integration_id_for_event("java", "sentry-java", ["android"]) == "java-android"
  31. assert (
  32. get_integration_id_for_event("java", "sentry-java", ["foobar", "log4j2"])
  33. == "java-log4j2"
  34. )
  35. assert get_integration_id_for_event("foobar", "sentry-java", []) == "java"
  36. assert get_integration_id_for_event("java", "foobar", []) == "java"
  37. assert get_integration_id_for_event("foobar", "foobar", []) is None