Skip to content

Commit d7b5ab6

Browse files
committed
RDBC-680 RavenDB_15134Test::getCountersOperationShouldReturnNullForNonExistingCounter
1 parent 9886d7c commit d7b5ab6

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
from ravendb.documents.operations.counters import GetCountersOperation
2+
from ravendb.tests.test_base import TestBase, User
3+
4+
5+
class TestRavenDB15134(TestBase):
6+
def setUp(self):
7+
super(TestRavenDB15134, self).setUp()
8+
9+
def test_get_counters_operation_should_return_null_for_non_existing_counter(self):
10+
doc_id = "users/1"
11+
12+
with self.store.open_session() as session:
13+
session.store(User(), doc_id)
14+
c = session.counters_for(doc_id)
15+
c.increment("likes")
16+
c.increment("dislikes", 2)
17+
session.save_changes()
18+
19+
vals = self.store.operations.send(GetCountersOperation(doc_id, ["likes", "downloads", "dislikes"]))
20+
self.assertEqual(3, len(vals.counters))
21+
22+
self.assertIn(None, vals.counters)
23+
self.assertEqual(1, len(list(filter(lambda x: x is not None and x.total_value == 1, vals.counters))))
24+
self.assertEqual(1, len(list(filter(lambda x: x is not None and x.total_value == 2, vals.counters))))
25+
26+
vals = self.store.operations.send(GetCountersOperation(doc_id, ["likes", "downloads", "dislikes"], True))
27+
self.assertEqual(3, len(vals.counters))
28+
29+
self.assertIn(None, vals.counters)
30+
self.assertTrue(len(list(filter(lambda x: x is not None and len(x.counter_values) == 1, vals.counters))) > 0)

0 commit comments

Comments
 (0)