test_cloudspanner.py 885 B

123456789101112131415161718192021222324252627282930
  1. import pytest
  2. from sentry.sentry_metrics.indexer.cloudspanner.cloudspanner import CloudSpannerIndexer, IdCodec
  3. from sentry.sentry_metrics.indexer.id_generator import get_id
  4. @pytest.mark.parametrize(
  5. "value",
  6. (
  7. 12345,
  8. 0, # smallest supported id
  9. 2**63 - 1, # largest supported id
  10. get_id(), # randomly generated id
  11. ),
  12. )
  13. def test_id_codec(value) -> None:
  14. codec = IdCodec()
  15. encoded = codec.encode(value)
  16. # Ensure it is in allowed range
  17. assert encoded >= -9223372036854775808
  18. assert encoded <= 9223372036854775807
  19. assert value == codec.decode(encoded)
  20. @pytest.mark.skip(reason="TODO: Implement it correctly")
  21. def test_spanner_indexer_service():
  22. # TODO: Provide instance_id and database_id when running the test
  23. span_indexer = CloudSpannerIndexer(instance_id="", database_id="")
  24. span_indexer.validate()