public void ReadPresenceDb() { using var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("UnitTestProject.Data.Presence.20210316.db"); var db = PresenceDb.Read(stream); db.OsuVersion.Should().Be(20210316); db.Players.Should().HaveCount(7); db.Players[1].PlayerId.Should().Be(-3); db.Players[1].PlayerName.Should().Be("BanchoBot"); db.Players[2].PlayerId.Should().Be(-2070907); db.Players[2].PlayerName.Should().Be("Tillerino"); db.Players[2].UtcOffset.Should().Be(24); db.Players[2].CountryByte.Should().Be(56); db.Players[2].PlayerRank.Should().Be(PlayerRank.Default); db.Players[2].GameMode.Should().Be(GameMode.Standard); db.Players[2].Longitude.Should().BeApproximately(11.5850f, 0.0001f); db.Players[2].Latitude.Should().BeApproximately(48.1497f, 0.0001f); db.Players[2].GlobalRank.Should().Be(0); db.Players[2].LastUpdate.Should().BeAfter(new DateTime(2021, 04, 10, 20, 17, 17, DateTimeKind.Utc)) .And.BeBefore(new DateTime(2021, 04, 10, 20, 17, 18, DateTimeKind.Utc)); db.Players[5].GlobalRank.Should().Be(3873896); }
public void ReadPresenceDbEmpty() { using var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("UnitTestProject.Data.Presence.20210316_empty.db"); var db = PresenceDb.Read(stream); db.OsuVersion.Should().Be(20210316); db.Players.Should().BeEmpty(); }
public void ReadPresenceDb() { var db = PresenceDb.Read(OsuPath + "presence.db"); Debug.WriteLine("Version: " + db.OsuVersion); Debug.WriteLine("Amount of scores: " + db.AmountOfPlayers); for (int i = 0; i < Math.Min(db.AmountOfPlayers, 10); i++) //10 at most { var p = db.Players[i]; Debug.WriteLine($"Player {p.PlayerName} lives at long {p.Longitude} and lat {p.Latitude}. Some DateTime: {p.Unknown1}. Rank: {p.PlayerRank}. {p.GameMode}, #{p.GlobalRank}, id {p.PlayerId}"); } }
public void ReadWritePresenceDb() { PresenceDb db; using (var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("UnitTestProject.Data.Presence.20210316.db")) db = PresenceDb.Read(stream); using var ms = new MemoryStream(); using var sw = new SerializationWriter(ms); db.WriteToStream(sw); ms.Position = 0; var read = PresenceDb.Read(ms); db.Should().BeEquivalentTo(read); }