11"""Tests for Analytics events endpoints (client.analytics.events)."""
2+
23from __future__ import annotations
34
45import pytest
6+ import requests_mock
57
68from tests .utils .version import is_v30_or_above
79from typesense .client import Client
8- import requests_mock
9-
1010from typesense .types .analytics import AnalyticsEvent
1111
12-
1312pytestmark = pytest .mark .skipif (
1413 not is_v30_or_above (
15- Client ({
16- "api_key" : "xyz" ,
17- "nodes" : [{"host" : "localhost" , "port" : 8108 , "protocol" : "http" }],
18- })
14+ Client (
15+ {
16+ "api_key" : "xyz" ,
17+ "nodes" : [{"host" : "localhost" , "port" : 8108 , "protocol" : "http" }],
18+ }
19+ )
1920 ),
2021 reason = "Run analytics events tests only on v30+" ,
2122)
2223
2324
24- def test_actual_create_event (actual_client : Client , delete_all : None , create_collection : None , delete_all_analytics_rules : None ) -> None :
25+ def test_actual_create_event (
26+ actual_client : Client ,
27+ delete_all : None ,
28+ create_collection : None ,
29+ delete_all_analytics_rules : None ,
30+ ) -> None :
2531 actual_client .analytics .rules .create (
2632 {
2733 "name" : "company_analytics_rule" ,
@@ -61,7 +67,9 @@ def test_status(actual_client: Client, delete_all: None) -> None:
6167 assert isinstance (status , dict )
6268
6369
64- def test_retrieve_events (actual_client : Client , delete_all : None , delete_all_analytics_rules : None ) -> None :
70+ def test_retrieve_events (
71+ actual_client : Client , delete_all : None , delete_all_analytics_rules : None
72+ ) -> None :
6573 actual_client .analytics .rules .create (
6674 {
6775 "name" : "company_analytics_rule" ,
@@ -89,19 +97,12 @@ def test_retrieve_events(actual_client: Client, delete_all: None, delete_all_ana
8997 assert "events" in result
9098
9199
92-
93- def test_retrieve_events (fake_client : Client ) -> None :
94- with requests_mock .Mocker () as mock :
95- mock .get (
96- "http://nearest:8108/analytics/events" ,
97- json = {"events" : [{"name" : "company_analytics_rule" }]},
98- )
99- result = fake_client .analytics .events .retrieve (
100- user_id = "user-1" , name = "company_analytics_rule" , n = 10
101- )
102- assert "events" in result
103-
104- def test_acutal_retrieve_events (actual_client : Client , delete_all : None , create_collection : None , delete_all_analytics_rules : None ) -> None :
100+ def test_acutal_retrieve_events (
101+ actual_client : Client ,
102+ delete_all : None ,
103+ create_collection : None ,
104+ delete_all_analytics_rules : None ,
105+ ) -> None :
105106 actual_client .analytics .rules .create (
106107 {
107108 "name" : "company_analytics_rule" ,
@@ -126,6 +127,7 @@ def test_acutal_retrieve_events(actual_client: Client, delete_all: None, create_
126127 )
127128 assert "events" in result
128129
130+
129131def test_acutal_flush (actual_client : Client , delete_all : None ) -> None :
130132 resp = actual_client .analytics .events .flush ()
131133 assert resp ["ok" ] in [True , False ]
@@ -136,5 +138,3 @@ def test_flush(fake_client: Client) -> None:
136138 mock .post ("http://nearest:8108/analytics/flush" , json = {"ok" : True })
137139 resp = fake_client .analytics .events .flush ()
138140 assert resp ["ok" ] is True
139-
140-
0 commit comments