Merge pull request #15812 from peppy/realm-live-unmanaged-fetch-fix

Avoid attempting to fetch a non-managed `RealmLive` instance from the realm backing
This commit is contained in:
Dan Balasescu
2021-11-26 15:37:58 +09:00
committed by GitHub
4 changed files with 41 additions and 4 deletions

View File

@ -29,6 +29,23 @@ namespace osu.Game.Tests.Database
});
}
[Test]
public void TestAccessNonManaged()
{
var beatmap = new RealmBeatmap(CreateRuleset(), new RealmBeatmapDifficulty(), new RealmBeatmapMetadata());
var liveBeatmap = beatmap.ToLive();
Assert.IsFalse(beatmap.Hidden);
Assert.IsFalse(liveBeatmap.Value.Hidden);
Assert.IsFalse(liveBeatmap.PerformRead(l => l.Hidden));
Assert.Throws<InvalidOperationException>(() => liveBeatmap.PerformWrite(l => l.Hidden = true));
Assert.IsFalse(beatmap.Hidden);
Assert.IsFalse(liveBeatmap.Value.Hidden);
Assert.IsFalse(liveBeatmap.PerformRead(l => l.Hidden));
}
[Test]
public void TestValueAccessWithOpenContext()
{