Fix SeString serialization/deserialization (#840)

* chore: add SeString JSON conversion test

* fix: SeString JSON serialization

* chore: add SeString JSON deserialization test

* chore: rename tests to abstract format away

* chore: fix typos

* fix: deserializable SeStrings

* chore: add comment to test

* chore: use DeserializeConfig in Load
This commit is contained in:
karashiiro 2022-05-13 13:07:51 -07:00 committed by GitHub
parent 6dcddb1f29
commit 387a820392
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 104 additions and 14 deletions

View file

@ -5,6 +5,7 @@ using System.IO;
using Dalamud.Data;
using Dalamud.Game.Text.SeStringHandling.Payloads;
using Newtonsoft.Json;
using Serilog;
// TODOs:
@ -29,6 +30,7 @@ namespace Dalamud.Game.Text.SeStringHandling
/// <summary>
/// Gets the Lumina instance to use for any necessary data lookups.
/// </summary>
[JsonIgnore]
public DataManager DataResolver => Service<DataManager>.Get();
/// <summary>
@ -231,13 +233,13 @@ namespace Dalamud.Game.Text.SeStringHandling
/// <summary>
/// The start byte of a payload.
/// </summary>
[SuppressMessage("StyleCop.CSharp.NamingRules", "SA1310:Field names should not contain underscore", Justification = "This is prefered.")]
[SuppressMessage("StyleCop.CSharp.NamingRules", "SA1310:Field names should not contain underscore", Justification = "This is preferred.")]
protected const byte START_BYTE = 0x02;
/// <summary>
/// The end byte of a payload.
/// </summary>
[SuppressMessage("StyleCop.CSharp.NamingRules", "SA1310:Field names should not contain underscore", Justification = "This is prefered.")]
[SuppressMessage("StyleCop.CSharp.NamingRules", "SA1310:Field names should not contain underscore", Justification = "This is preferred.")]
protected const byte END_BYTE = 0x03;
/// <summary>