33from __future__ import annotations
44
55import pytest
6- import requests_mock
76
87from tests .utils .object_assertions import assert_match_object , assert_object_lists_match
98from tests .utils .version import is_v30_or_above
@@ -46,66 +45,24 @@ def test_init(fake_api_call: ApiCall) -> None:
4645 )
4746
4847
49- def test_retrieve (fake_analytics_rule : AnalyticsRuleV1 ) -> None :
50- """Test that the AnalyticsRuleV1 object can retrieve an analytics_rule."""
51- json_response : RuleSchemaForQueries = {
5248 "name" : "company_analytics_rule" ,
5349 "params" : {
54- "destination" : {
55- "collection" : "companies_queries" ,
56- },
5750 "source" : {"collections" : ["companies" ]},
5851 },
5952 "type" : "nohits_queries" ,
6053 }
6154
62- with requests_mock .Mocker () as mock :
63- mock .get (
64- "/analytics/rules/company_analytics_rule" ,
65- json = json_response ,
66- )
67-
68- response = fake_analytics_rule .retrieve ()
6955
70- assert len (mock .request_history ) == 1
71- assert mock .request_history [0 ].method == "GET"
72- assert (
73- mock .request_history [0 ].url
74- == "http://nearest:8108/analytics/rules/company_analytics_rule"
75- )
76- assert response == json_response
7756
7857
79- def test_delete (fake_analytics_rule : AnalyticsRuleV1 ) -> None :
80- """Test that the AnalyticsRuleV1 object can delete an analytics_rule."""
81- json_response : RuleDeleteSchema = {
8258 "name" : "company_analytics_rule" ,
8359 }
84- with requests_mock .Mocker () as mock :
85- mock .delete (
86- "/analytics/rules/company_analytics_rule" ,
87- json = json_response ,
88- )
89-
90- response = fake_analytics_rule .delete ()
91-
92- assert len (mock .request_history ) == 1
93- assert mock .request_history [0 ].method == "DELETE"
94- assert (
95- mock .request_history [0 ].url
96- == "http://nearest:8108/analytics/rules/company_analytics_rule"
97- )
98- assert response == json_response
9960
10061
101- def test_actual_retrieve (
102- actual_analytics_rules : AnalyticsRulesV1 ,
10362 delete_all : None ,
10463 delete_all_analytics_rules_v1 : None ,
10564 create_analytics_rule_v1 : None ,
10665) -> None :
107- """Test that the AnalyticsRuleV1 object can retrieve a rule from Typesense Server."""
108- response = actual_analytics_rules ["company_analytics_rule" ].retrieve ()
10966
11067 expected : RuleSchemaForQueries = {
11168 "name" : "company_analytics_rule" ,
@@ -120,14 +77,10 @@ def test_actual_retrieve(
12077 assert response == expected
12178
12279
123- def test_actual_delete (
124- actual_analytics_rules : AnalyticsRulesV1 ,
12580 delete_all : None ,
12681 delete_all_analytics_rules_v1 : None ,
12782 create_analytics_rule_v1 : None ,
12883) -> None :
129- """Test that the AnalyticsRuleV1 object can delete a rule from Typesense Server."""
130- response = actual_analytics_rules ["company_analytics_rule" ].delete ()
13184
13285 expected : RuleDeleteSchema = {
13386 "name" : "company_analytics_rule" ,
0 commit comments