コード例 #1
0
ファイル: D2STest.cs プロジェクト: tytannial/D2SLib
        public void VerifyCanReadSimple115Save()
        {
            D2S character = Core.ReadD2S(File.ReadAllBytes(@"Resources\D2S\1.15\Amazon.d2s"));

            Assert.IsTrue(character.Name == "Amazon");
            Assert.IsTrue(character.ClassId == 0x0);
        }
コード例 #2
0
ファイル: D2STest.cs プロジェクト: tytannial/D2SLib
        public void VerifyCanWriteComplex115Save()
        {
            byte[] input     = File.ReadAllBytes(@"Resources\D2S\1.15\DannyIsGreat.d2s");
            D2S    character = Core.ReadD2S(input);

            byte[] ret = Core.WriteD2S(character);
            //File.WriteAllBytes(Environment.ExpandEnvironmentVariables($"%userprofile%/Saved Games/Diablo II Resurrected Tech Alpha/{character.Name}.d2s"), ret);
            Assert.IsTrue(input.Length == ret.Length);
        }
コード例 #3
0
ファイル: D2STest.cs プロジェクト: dschu012/D2SLib
    public void VerifyCanReadComplex115Save()
    {
        D2S character = Core.ReadD2S(File.ReadAllBytes(@"Resources\D2S\1.15\DannyIsGreat.d2s"));

        Assert.IsTrue(character.Name == "DannyIsGreat");
        Assert.IsTrue(character.ClassId == 0x1);

        LogCharacter(character);
    }
コード例 #4
0
ファイル: D2STest.cs プロジェクト: dschu012/D2SLib
    public void VerifyCanWriteComplex115Save()
    {
        byte[] input     = File.ReadAllBytes(@"Resources\D2S\1.15\DannyIsGreat.d2s");
        D2S    character = Core.ReadD2S(input);

        byte[] ret = Core.WriteD2S(character);
        //File.WriteAllBytes(Environment.ExpandEnvironmentVariables($"%userprofile%/Saved Games/Diablo II Resurrected Tech Alpha/{character.Name}.d2s"), ret);
        Assert.AreEqual(input.Length, ret.Length);

        // This test fails with "element at index 12 differs" (checksum) but that was true in original code
        //CollectionAssert.AreEqual(input, ret);
    }
コード例 #5
0
ファイル: D2STest.cs プロジェクト: tytannial/D2SLib
        public void VerifyCanReadComplex115Save()
        {
            D2S character = Core.ReadD2S(File.ReadAllBytes(@"Resources\D2S\1.15\DannyIsGreat.d2s"));

            Assert.IsTrue(character.Name == "DannyIsGreat");
            Assert.IsTrue(character.ClassId == 0x1);

            /*
             * File.WriteAllText(@"D:\DannyIsGreat.json", JsonSerializer.Serialize(character,
             * new JsonSerializerOptions
             * {
             *  WriteIndented = true,
             *  IgnoreNullValues = true
             * }));
             */
        }
コード例 #6
0
ファイル: D2STest.cs プロジェクト: dschu012/D2SLib
    private static void LogCharacter(D2S character, string?label = null)
    {
        if (label is not null)
        {
            Console.Write(label);
            Console.WriteLine(':');
        }

        Console.WriteLine(
            JsonSerializer.Serialize(character,
                                     new JsonSerializerOptions
        {
            WriteIndented = true,
#if NET6_0_OR_GREATER
            DefaultIgnoreCondition = System.Text.Json.Serialization.JsonIgnoreCondition.WhenWritingNull,
#else
            IgnoreNullValues = true,
#endif
            PropertyNamingPolicy = JsonNamingPolicy.CamelCase
        }));
    }
コード例 #7
0
 public static byte[] WriteD2S(D2S d2s)
 {
     return(D2S.Write(d2s));
 }
コード例 #8
0
 public static D2S ReadD2S(byte[] bytes)
 {
     return(D2S.Read(bytes));
 }
コード例 #9
0
 public static D2S ReadD2S(string path)
 {
     return(D2S.Read(File.ReadAllBytes(path)));
 }