@@ -91,3 +91,32 @@ def test_increment_many_counters(self):
9191
9292 for counter in counters :
9393 self .assertEqual (int (counter .counter_name ), counter .total_value )
94+
95+ def test_increment_counter_in_separate_bulk_inserts (self ):
96+ with self .store .bulk_insert () as bulk_insert :
97+ user1 = User (name = "Aviv1" )
98+ bulk_insert .store (user1 )
99+ user1_id = user1 .Id
100+
101+ user2 = User (name = "Aviv2" )
102+ bulk_insert .store (user2 )
103+ user2_id = user2 .Id
104+
105+ with self .store .bulk_insert () as bulk_insert :
106+ counter = bulk_insert .counters_for (user1_id )
107+ counter .increment ("likes" , 100 )
108+ bulk_insert .counters_for (user2_id ).increment ("votes" , 1000 )
109+ counter .increment ("downloads" , 500 )
110+
111+ counters = self .store .operations .send (GetCountersOperation (user1_id , ["likes" , "downloads" ])).counters
112+
113+ self .assertEqual (2 , len (counters ))
114+
115+ counters .sort (key = lambda counter : counter .counter_name )
116+
117+ self .assertEqual (500 , counters [0 ].total_value )
118+ self .assertEqual (100 , counters [1 ].total_value )
119+
120+ val = self .store .operations .send (GetCountersOperation (user2_id , "votes" ))
121+
122+ self .assertEqual (1000 , val .counters [0 ].total_value )
0 commit comments