From ba3fab8c10b7b56941dae08a5918d55f4b8ad475 Mon Sep 17 00:00:00 2001 From: Rutherther Date: Sun, 8 Jan 2023 14:12:24 +0100 Subject: [PATCH] tests: update, fix tests --- .../Basic/BoolStringConverterTests.cs | 2 +- .../Packets/CListPacketConverterTests.cs | 76 +++++++++++++------ .../Packets/InPacketConverterTests.cs | 54 ++++++++++++- .../Packets/PinitPacketConverterTest.cs | 16 +++- .../NosSmooth.Packets.Tests.csproj | 1 + 5 files changed, 118 insertions(+), 31 deletions(-) diff --git a/Tests/NosSmooth.Packets.Tests/Converters/Basic/BoolStringConverterTests.cs b/Tests/NosSmooth.Packets.Tests/Converters/Basic/BoolStringConverterTests.cs index 7359ed56fb5aee7c03cccb020d1f4261d83f7b9a..1c660740d9d8bb987b397a665f87ee83e9e40540 100644 --- a/Tests/NosSmooth.Packets.Tests/Converters/Basic/BoolStringConverterTests.cs +++ b/Tests/NosSmooth.Packets.Tests/Converters/Basic/BoolStringConverterTests.cs @@ -52,7 +52,7 @@ public class BoolStringConverterTests { var deserialize = "-1"; var stringEnumerator = new PacketStringEnumerator(deserialize); - var deserializeResult = _stringSerializer.Deserialize(ref stringEnumerator, default); + var deserializeResult = _stringSerializer.Deserialize(ref stringEnumerator, DeserializeOptions.Nullable); Assert.True(deserializeResult.IsSuccess, !deserializeResult.IsSuccess ? deserializeResult.Error.Message : string.Empty); Assert.Null(deserializeResult.Entity); } diff --git a/Tests/NosSmooth.Packets.Tests/Converters/Packets/CListPacketConverterTests.cs b/Tests/NosSmooth.Packets.Tests/Converters/Packets/CListPacketConverterTests.cs index fb254b3fedc8e5faba7519942fc30215f406434f..1544ac52dfeec2ba45bedb2c52dbb21463461b97 100644 --- a/Tests/NosSmooth.Packets.Tests/Converters/Packets/CListPacketConverterTests.cs +++ b/Tests/NosSmooth.Packets.Tests/Converters/Packets/CListPacketConverterTests.cs @@ -4,6 +4,7 @@ // Copyright (c) František Boháček. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. +using System.Collections.Generic; using System.Linq; using Microsoft.Extensions.DependencyInjection; using NosSmooth.Packets.Enums.Players; @@ -13,6 +14,7 @@ using NosSmooth.PacketSerializer.Abstractions; using NosSmooth.PacketSerializer.Abstractions.Attributes; using NosSmooth.PacketSerializer.Extensions; using NosSmooth.PacketSerializer.Packets; +using Shouldly; using Xunit; namespace NosSmooth.Packets.Tests.Converters.Packets; @@ -80,15 +82,24 @@ public class CListPacketConverterTests new NullableWrapper(new CListPetSubPacket(0, 2100)), new NullableWrapper(new CListPetSubPacket(0, 2102)), new NullableWrapper(new CListPetSubPacket(0, 317)), - new NullableWrapper(new CListPetSubPacket(null, null)), - new NullableWrapper(new CListPetSubPacket(null, null)), - new NullableWrapper(new CListPetSubPacket(null, null)), - new NullableWrapper(new CListPetSubPacket(null, null)), - new NullableWrapper(new CListPetSubPacket(null, null)), - new NullableWrapper(new CListPetSubPacket(null, null)), - new NullableWrapper(new CListPetSubPacket(null, null)), - new NullableWrapper(new CListPetSubPacket(null, null)), - new NullableWrapper(new CListPetSubPacket(null, null)), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), }, 0, 0 @@ -114,7 +125,7 @@ public class CListPacketConverterTests "clist 1 derfy 0 1 0 106 0 2 99 80 -1.-1.4452.4468.4840.4131.-1.-1 99 1 1 0.2105.0.319.0.2106.0.2107.0.2108.0.2100.0.2102.0.317.-1.-1.-1.-1.-1.-1.-1.-1.-1.-1.-1.-1.-1.-1.-1.-1.-1.-1 0 0", PacketSource.Server ); - Assert.True(packetResult.IsSuccess); + packetResult.IsSuccess.ShouldBeTrue(); var expectedPacket = new CListPacket ( @@ -143,7 +154,7 @@ public class CListPacketConverterTests string.Empty, 1, 1, - new OptionalWrapper>[] + new List>>(new OptionalWrapper>[] { new NullableWrapper(new CListPetSubPacket(0, 2105)), new NullableWrapper(new CListPetSubPacket(0, 319)), @@ -153,20 +164,41 @@ public class CListPacketConverterTests new NullableWrapper(new CListPetSubPacket(0, 2100)), new NullableWrapper(new CListPetSubPacket(0, 2102)), new NullableWrapper(new CListPetSubPacket(0, 317)), - new NullableWrapper(new CListPetSubPacket(null, null)), - new NullableWrapper(new CListPetSubPacket(null, null)), - new NullableWrapper(new CListPetSubPacket(null, null)), - new NullableWrapper(new CListPetSubPacket(null, null)), - new NullableWrapper(new CListPetSubPacket(null, null)), - new NullableWrapper(new CListPetSubPacket(null, null)), - new NullableWrapper(new CListPetSubPacket(null, null)), - new NullableWrapper(new CListPetSubPacket(null, null)), - new NullableWrapper(new CListPetSubPacket(null, null)), - }, + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + new NullableWrapper(null), + }), 0, 0 ); - Assert.Equal(expectedPacket, packetResult.Entity); + var packet = (CListPacket)packetResult.Entity; + packet.Class.ShouldBe(expectedPacket.Class); + packet.Level.ShouldBe(expectedPacket.Level); + packet.Name.ShouldBe(expectedPacket.Name); + packet.Sex.ShouldBe(expectedPacket.Sex); + packet.Slot.ShouldBe(expectedPacket.Slot); + packet.HairColor.ShouldBe(expectedPacket.HairColor); + packet.HatDesign.ShouldBe(expectedPacket.HatDesign); + packet.HeroLevel.ShouldBe(expectedPacket.HeroLevel); + packet.JobLevel.ShouldBe(expectedPacket.JobLevel); + packet.HairStyle.ShouldBe(expectedPacket.HairStyle); + packet.EquipmentSubPacket.ShouldBe(expectedPacket.EquipmentSubPacket); + packet.PetsSubPacket.ShouldBe(expectedPacket.PetsSubPacket); } /// diff --git a/Tests/NosSmooth.Packets.Tests/Converters/Packets/InPacketConverterTests.cs b/Tests/NosSmooth.Packets.Tests/Converters/Packets/InPacketConverterTests.cs index 716e6a0d42ed5cfc073b7043f0cbf59bcbb2a564..cb71df101417cf1258fa4975dd5214efeeb120e0 100644 --- a/Tests/NosSmooth.Packets.Tests/Converters/Packets/InPacketConverterTests.cs +++ b/Tests/NosSmooth.Packets.Tests/Converters/Packets/InPacketConverterTests.cs @@ -17,6 +17,7 @@ using NosSmooth.PacketSerializer.Abstractions; using NosSmooth.PacketSerializer.Abstractions.Attributes; using NosSmooth.PacketSerializer.Extensions; using NosSmooth.PacketSerializer.Packets; +using Shouldly; using Xunit; namespace NosSmooth.Packets.Tests.Converters.Packets; @@ -111,8 +112,52 @@ public class InPacketConverterTests null, null ); - Assert.True(result.IsSuccess); - Assert.Equal(expectedPacket, result.Entity); + result.IsSuccess.ShouldBeTrue(); + var packet = (InPacket)result.Entity; + packet.EntityType.ShouldBe(expectedPacket.EntityType); + packet.EntityId.ShouldBe(expectedPacket.EntityId); + packet.ItemSubPacket.ShouldBe(expectedPacket.ItemSubPacket); + packet.Direction.ShouldBe(expectedPacket.Direction); + packet.Name.ShouldBe(expectedPacket.Name); + packet.PositionX.ShouldBe(expectedPacket.PositionX); + packet.PositionY.ShouldBe(expectedPacket.PositionY); + packet.VNum.ShouldBe(expectedPacket.VNum); + packet.NonPlayerSubPacket.ShouldBe(expectedPacket.NonPlayerSubPacket); + + packet.PlayerSubPacket.ShouldNotBeNull(); + var playerSubPacket = packet.PlayerSubPacket!; + var expectedSubPacket = packet.PlayerSubPacket!; + + playerSubPacket.Level.ShouldBe(expectedSubPacket.Level); + playerSubPacket.FamilySubPacket.ShouldBe(expectedSubPacket.FamilySubPacket); + playerSubPacket.HeroLevel.ShouldBe(expectedSubPacket.HeroLevel); + playerSubPacket.Size.ShouldBe(expectedSubPacket.Size); + playerSubPacket.FamilyLevel.ShouldBe(expectedSubPacket.FamilyLevel); + playerSubPacket.MorphUpgrade.ShouldBe(expectedSubPacket.MorphUpgrade); + playerSubPacket.MorphUpgrade2.ShouldBe(expectedSubPacket.MorphUpgrade2); + playerSubPacket.Authority.ShouldBe(expectedSubPacket.Authority); + playerSubPacket.Class.ShouldBe(expectedSubPacket.Class); + playerSubPacket.Compliment.ShouldBe(expectedSubPacket.Compliment); + playerSubPacket.Equipment.ShouldBe(expectedSubPacket.Equipment); + playerSubPacket.Faction.ShouldBe(expectedSubPacket.Faction); + playerSubPacket.Fairy.ShouldBe(expectedSubPacket.Fairy); + playerSubPacket.Sex.ShouldBe(expectedSubPacket.Sex); + playerSubPacket.ArenaWinner.ShouldBe(expectedSubPacket.ArenaWinner); + playerSubPacket.FairyElement.ShouldBe(expectedSubPacket.FairyElement); + playerSubPacket.FamilyIcons.ShouldBe(expectedSubPacket.FamilyIcons); + playerSubPacket.FamilyName.ShouldBe(expectedSubPacket.FamilyName); + playerSubPacket.GroupId.ShouldBe(expectedSubPacket.GroupId); + playerSubPacket.HairColor.ShouldBe(expectedSubPacket.HairColor); + playerSubPacket.HairStyle.ShouldBe(expectedSubPacket.HairStyle); + playerSubPacket.HpPercentage.ShouldBe(expectedSubPacket.HpPercentage); + playerSubPacket.IsInvisible.ShouldBe(expectedSubPacket.IsInvisible); + playerSubPacket.IsSitting.ShouldBe(expectedSubPacket.IsSitting); + playerSubPacket.MpPercentage.ShouldBe(expectedSubPacket.MpPercentage); + playerSubPacket.ReputationIcon.ShouldBe(expectedSubPacket.ReputationIcon); + playerSubPacket.FamilySubPacket.ShouldBe(expectedSubPacket.FamilySubPacket); + playerSubPacket.ArmorUpgradeRareSubPacket.ShouldBe(expectedSubPacket.ArmorUpgradeRareSubPacket); + playerSubPacket.WeaponUpgradeRareSubPacket.ShouldBe(expectedSubPacket.WeaponUpgradeRareSubPacket); + playerSubPacket.MorphVNum.ShouldBe(expectedSubPacket.MorphVNum); } /// @@ -235,7 +280,7 @@ public class InPacketConverterTests null, null, "0", - null, + "-1", "0", 0, 0, @@ -250,7 +295,8 @@ public class InPacketConverterTests ); Assert.True(result.IsSuccess); - Assert.Equal(expectedPacket, result.Entity); + result.IsSuccess.ShouldBeTrue(); + result.Entity.ShouldBe(expectedPacket); } /// diff --git a/Tests/NosSmooth.Packets.Tests/Converters/Packets/PinitPacketConverterTest.cs b/Tests/NosSmooth.Packets.Tests/Converters/Packets/PinitPacketConverterTest.cs index 2db06a11e6085d30709bca7fbd6155dcca766578..be504b4d37bfdeb3fe0e57826601ebc86c3620fa 100644 --- a/Tests/NosSmooth.Packets.Tests/Converters/Packets/PinitPacketConverterTest.cs +++ b/Tests/NosSmooth.Packets.Tests/Converters/Packets/PinitPacketConverterTest.cs @@ -57,7 +57,9 @@ public class PinitPacketConverterTest 83, "Kliff", null, - 319 + 319, + 1, + 0 ), null ), @@ -71,7 +73,9 @@ public class PinitPacketConverterTest 83, "@", null, - 2105 + 2105, + 0, + 0 ), null ) @@ -110,7 +114,9 @@ public class PinitPacketConverterTest 83, "Kliff", null, - 319 + 319, + 1, + 0 ), null ), @@ -128,7 +134,9 @@ public class PinitPacketConverterTest 83, "@", null, - 2105 + 2105, + 0, + 0 ), null ), diff --git a/Tests/NosSmooth.Packets.Tests/NosSmooth.Packets.Tests.csproj b/Tests/NosSmooth.Packets.Tests/NosSmooth.Packets.Tests.csproj index 8ea2c331f5096412237c616e7a90e40fb109c154..381fccfb0173bf4712e63d77784a3768584b5b47 100644 --- a/Tests/NosSmooth.Packets.Tests/NosSmooth.Packets.Tests.csproj +++ b/Tests/NosSmooth.Packets.Tests/NosSmooth.Packets.Tests.csproj @@ -10,6 +10,7 @@ + runtime; build; native; contentfiles; analyzers; buildtransitive