public void DataDocumentROMLocaleTest()
    {
        using TypeDescriptionDataDocument document = TypeDescriptionDataDocument.Parse(GetBytesForROM("BasicPortrait"), Localization.FRFR);

        Assert.AreEqual(Localization.FRFR, document.Localization);
        Assert.IsTrue(document.JsonDataDocument.RootElement.TryGetProperty("BasicPortrait", out JsonElement _));
    }
    public void DataDocumentFileTest()
    {
        using TypeDescriptionDataDocument document = TypeDescriptionDataDocument.Parse(_dataFile);

        Assert.AreEqual(Localization.KOKR, document.Localization);
        Assert.IsTrue(document.JsonDataDocument.RootElement.TryGetProperty("BasicPortrait", out JsonElement _));
    }
    public void DataDocumentStreamTest()
    {
        using FileStream stream = new(_dataFile, FileMode.Open);
        using TypeDescriptionDataDocument document = TypeDescriptionDataDocument.Parse(stream, Localization.FRFR);

        Assert.AreEqual(Localization.FRFR, document.Localization);
        Assert.IsTrue(document.JsonDataDocument.RootElement.TryGetProperty("BasicPortrait", out JsonElement _));
    }
    public void DataDocumentStreamWithGSDTest()
    {
        using GameStringDocument gameStringDocument = GameStringDocument.Parse(_jsonGameStringFileKOKR);
        using FileStream stream = new(_dataFile, FileMode.Open);
        using TypeDescriptionDataDocument document = TypeDescriptionDataDocument.Parse(stream, gameStringDocument);

        Assert.AreEqual(Localization.KOKR, document.Localization);
        Assert.IsTrue(document.JsonDataDocument.RootElement.TryGetProperty("BasicPortrait", out JsonElement _));
    }
    public void DataDocumentROMGSDTest()
    {
        using GameStringDocument gameStringDocument = GameStringDocument.Parse(_jsonGameStringFileKOKR);
        using TypeDescriptionDataDocument document  = TypeDescriptionDataDocument.Parse(GetBytesForROM("BasicPortrait"), gameStringDocument);

        Assert.AreEqual(Localization.KOKR, document.Localization);
        Assert.IsTrue(document.TryGetTypeDescriptionById("BasicPortrait", out TypeDescription? typeDescription));
        Assert.AreEqual("some basic portrait", typeDescription !.Name);
    }
    public async Task DataDocumentStreamWithGameStringStreamAsyncTest()
    {
        using FileStream streamGameString          = new(_jsonGameStringFileKOKR, FileMode.Open);
        using FileStream stream                    = new(_dataFile, FileMode.Open);
        using TypeDescriptionDataDocument document = await TypeDescriptionDataDocument.ParseAsync(stream, streamGameString);

        Assert.AreEqual(Localization.KOKR, document.Localization);
        Assert.IsTrue(document.JsonDataDocument.RootElement.TryGetProperty("BasicPortrait", out JsonElement _));
    }
 public TypeDescriptionDataDocumentTests()
 {
     _typeDescriptionDataDocument = TypeDescriptionDataDocument.Parse(LoadJsonTestData(), Localization.ENUS);
 }