Skip to content

Commit 0082f6e

Browse files
committed
refactor: redis big-segments returns empty Membership instead of nullopt
1 parent 79af82e commit 0082f6e

2 files changed

Lines changed: 5 additions & 6 deletions

File tree

libs/server-sdk-redis-source/src/redis_big_segment_store.cpp

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,6 @@ IBigSegmentStore::GetMembershipResult RedisBigSegmentStore::GetMembership(
6161
return tl::make_unexpected(e.what());
6262
}
6363

64-
if (included.empty() && excluded.empty()) {
65-
return std::nullopt;
66-
}
6764
return Membership::FromSegmentRefs(included, excluded);
6865
}
6966

libs/server-sdk-redis-source/tests/redis_big_segment_store_test.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -72,10 +72,11 @@ class RedisBigSegmentTests : public ::testing::Test {
7272

7373
} // namespace
7474

75-
TEST_F(RedisBigSegmentTests, EmptyStoreReturnsNoMembership) {
75+
TEST_F(RedisBigSegmentTests, EmptyStoreReturnsEmptyMembership) {
7676
auto const result = store_->GetMembership("nobody");
7777
ASSERT_TRUE(result);
78-
ASSERT_FALSE(result->has_value());
78+
ASSERT_TRUE(result->has_value());
79+
ASSERT_FALSE(result->value().CheckMembership("seg1.g1").has_value());
7980
}
8081

8182
TEST_F(RedisBigSegmentTests, EmptyStoreReturnsNoMetadata) {
@@ -124,7 +125,8 @@ TEST_F(RedisBigSegmentTests, GetMembershipIsPrefixScoped) {
124125

125126
auto const result = store_->GetMembership("alice");
126127
ASSERT_TRUE(result);
127-
ASSERT_FALSE(result->has_value());
128+
ASSERT_TRUE(result->has_value());
129+
ASSERT_FALSE(result->value().CheckMembership("seg1.g1").has_value());
128130
}
129131

130132
TEST_F(RedisBigSegmentTests, GetMetadataReturnsSyncTime) {

0 commit comments

Comments
 (0)