1+ import threading
2+ import time
13from queue import Queue
24
35from ravendb .changes .types import CounterChange , CounterChangeTypes
@@ -49,9 +51,9 @@ def test_can_get_notification_about_counter_increment(self):
4951 close_method ()
5052
5153 def test_can_get_notification_about_counter_delete (self ):
52- changes_queue = Queue ()
54+ changes = []
5355 observer = self .store .changes ().for_counters_of_document ("users/1" )
54- close_method = observer .subscribe (changes_queue . put )
56+ close_method = observer .subscribe (changes . append )
5557
5658 with self .store .open_session () as session :
5759 session .store (User (), "users/1" )
@@ -60,8 +62,13 @@ def test_can_get_notification_about_counter_delete(self):
6062 with self .store .open_session () as session :
6163 session .counters_for ("users/1" ).increment ("likes" )
6264 session .save_changes ()
65+ i = 0
66+ while i < 100 and not changes :
67+ i += 1
68+ time .sleep (0.1 )
69+
70+ counter_change = changes .pop ()
6371
64- counter_change : CounterChange = changes_queue .get (timeout = 10 )
6572 self .assertIsNotNone (counter_change )
6673
6774 self .assertEqual ("users/1" , counter_change .document_id )
@@ -75,7 +82,11 @@ def test_can_get_notification_about_counter_delete(self):
7582 session .counters_for ("users/1" ).delete ("likes" )
7683 session .save_changes ()
7784
78- counter_change = changes_queue .get (timeout = 10 )
85+ while i < 100 and not changes :
86+ i += 1
87+ time .sleep (0.1 )
88+
89+ counter_change = changes .pop ()
7990 self .assertIsNotNone (counter_change )
8091
8192 self .assertEqual ("users/1" , counter_change .document_id )
0 commit comments