mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-11-13 05:20:00 -08:00
Merge d38a8d9145 into 587c4b43c1
This commit is contained in:
commit
62aa00c97b
2 changed files with 20 additions and 9 deletions
|
|
@ -128,16 +128,9 @@ void CardSetList::markAllAsKnownBatched(ICardSetPriorityController *controller)
|
|||
continue;
|
||||
}
|
||||
|
||||
bool changed = false;
|
||||
if (!set->getIsKnown() && !set->getIsKnownIgnored()) {
|
||||
if (!set->getIsKnown()) {
|
||||
set->setIsKnownInMemory(true);
|
||||
set->setEnabledInMemory(false);
|
||||
changed = true;
|
||||
} else if (set->getIsKnownIgnored() && !set->getEnabled()) {
|
||||
set->setEnabledInMemory(true);
|
||||
changed = true;
|
||||
}
|
||||
if (changed) {
|
||||
set->setEnabledInMemory(set->getIsKnownIgnored());
|
||||
saveData.append({set->getShortName(), static_cast<unsigned int>(set->getSortKey()), set->getEnabled(),
|
||||
set->getIsKnown()});
|
||||
}
|
||||
|
|
|
|||
|
|
@ -663,6 +663,24 @@ TEST_F(CardDatabaseCacheInvalidationTest, MarkAllSetsAsKnownIsBatched)
|
|||
EXPECT_TRUE(controller.isEnabled("XXX"));
|
||||
}
|
||||
|
||||
TEST_F(CardDatabaseCacheInvalidationTest, MarkAllSetsAsKnownDoesNotOverwriteSettings)
|
||||
{
|
||||
SeededSetPriorityController controller;
|
||||
CardSetList sets;
|
||||
sets.append(CardSet::newInstance(&controller, "XXX")); // no metadata: ignored
|
||||
|
||||
// Ignored sets keep their known state but are enabled.
|
||||
sets.markAllAsKnownBatched(&controller);
|
||||
EXPECT_TRUE(controller.isEnabled("XXX")) << "unnamed set starts enabled";
|
||||
|
||||
// disable the set
|
||||
controller.setEnabled("XXX", false);
|
||||
|
||||
// set should still be disabled after batching
|
||||
sets.markAllAsKnownBatched(&controller);
|
||||
EXPECT_FALSE(controller.isEnabled("XXX")) << "unnamed set should still be disabled after marking";
|
||||
}
|
||||
|
||||
TEST_F(CardDatabaseCacheInvalidationTest, ReloadReleasesPreviousSnapshot)
|
||||
{
|
||||
NoopCardPreferenceProvider prefs;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue