Skip to content

Commit 26fdf51

Browse files
committed
RDBC-769 BulkInsertCountersTest::addDocumentAfterIncrementCounter
1 parent c5b4b05 commit 26fdf51

File tree

2 files changed

+44
-1
lines changed

2 files changed

+44
-1
lines changed

ravendb/documents/bulk_insert_operation.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -540,7 +540,7 @@ def increment(self, id_: str, name: str, delta: int = 1) -> None:
540540

541541
self._operation._first = False
542542

543-
_id = self._id
543+
self._id = id_
544544
self._operation._in_progress_command = CommandType.COUNTERS
545545

546546
self._write_prefix_for_new_command()
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
from ravendb.documents.operations.counters import GetCountersOperation
2+
from ravendb.infrastructure.entities import User
3+
from ravendb.tests.test_base import TestBase
4+
5+
6+
class TestBulkInsertCounters(TestBase):
7+
def setUp(self):
8+
super().setUp()
9+
10+
def test_add_document_after_increment_counter(self):
11+
with self.store.bulk_insert() as bulk_insert:
12+
user1 = User()
13+
user1.name = "Grisha"
14+
bulk_insert.store(user1)
15+
16+
user_id_1 = user1.Id
17+
18+
with self.store.bulk_insert() as bulk_insert:
19+
counter = bulk_insert.counters_for(user_id_1)
20+
21+
counter.increment("likes", 100)
22+
counter.increment("downloads", 500)
23+
24+
user2 = User(name="Kotler")
25+
bulk_insert.store(user2)
26+
27+
user_id_2 = user2.Id
28+
29+
bulk_insert.counters_for(user_id_2).increment("votes", 1000)
30+
31+
counters = self.store.operations.send(GetCountersOperation(user_id_1, ["likes", "downloads"])).counters
32+
33+
self.assertEqual(2, len(counters))
34+
35+
counters.sort(key=lambda counter: counter.counter_name)
36+
37+
self.assertEqual(500, counters[0].total_value)
38+
39+
self.assertEqual(100, counters[1].total_value)
40+
41+
val = self.store.operations.send(GetCountersOperation(user_id_2, "votes"))
42+
43+
self.assertEqual(1000, val.counters[0].total_value)

0 commit comments

Comments
 (0)