1+ """Tests for telemetry product events."""
2+
13import pytest
24
35from datu .telemetry .product .events import MCPClientEvent , OpenAIEvent , ProductTelemetryEvent
46
57
68def test_event_initialization (event , sample_event_data ):
9+ """Test that event initializes correctly with given data."""
710 assert event .properties ["event_name" ] == sample_event_data ["event_name" ]
811 assert event .properties ["user_id" ] == sample_event_data ["user_id" ]
912 assert event .properties ["timestamp" ] == sample_event_data ["timestamp" ]
1013 assert event .properties ["properties" ] == sample_event_data ["properties" ]
1114
1215
1316def test_event_name_and_batch_key (event ):
17+ """Test that event name and batch key are set correctly."""
1418 assert event .name == "ProductTelemetryEvent"
1519 assert event .batch_key == event .name
1620
1721
1822def test_batching_same_type (event ):
23+ """Test that batching works for events of the same type."""
1924 other = ProductTelemetryEvent (event_name = "other_event" )
2025 batched = event .batch (other )
2126
@@ -25,6 +30,8 @@ def test_batching_same_type(event):
2530
2631
2732def test_batching_different_type_raises ():
33+ """Test that batching raises an error for events of different types."""
34+
2835 class AnotherEvent (ProductTelemetryEvent ):
2936 pass
3037
@@ -35,6 +42,7 @@ class AnotherEvent(ProductTelemetryEvent):
3542
3643
3744def test_batch_size_increment (event ):
45+ """Test that batch size increments correctly."""
3846 # Initial batch_size
3947 assert event .batch_size == 1
4048 event .batch (ProductTelemetryEvent ())
@@ -44,6 +52,7 @@ def test_batch_size_increment(event):
4452
4553
4654def test_mcp_client_event_properties ():
55+ """Test that MCPClientEvent initializes correctly with given data."""
4756 servers = ["playwright" , "puppeteer" ]
4857 event = MCPClientEvent (server_names = servers )
4958
@@ -56,7 +65,8 @@ def test_mcp_client_event_properties():
5665
5766
5867def test_openai_event_properties ():
59- from datu .app_config import get_app_settings
68+ """Test that OpenAIEvent initializes correctly with given data."""
69+ from datu .app_config import get_app_settings # pylint: disable=import-outside-toplevel
6070
6171 app_settings = get_app_settings ()
6272 data = {"user_id" : "123" , "action" : "test" }
0 commit comments