using System;
using System.Collections.Generic;
using System.Text.Json;
using Cthangover.Core.Mods.Testing;
namespace Cthangover.Mods.Avatars.Tests
{
/// Resource serialization preserves opaque renderer values and rejects malformed preset groups.
public sealed class AvatarDefinitionTests
{
[ModTest("avatar/definition_json_roundtrip_preserves_renderer_data")]
public static void RoundTrip(ModTestContext ctx)
{
var original = AvatarInstanceTests.Definition();
original.Groups["eyes_state"].Presets["opened"].Values["layer"] = JsonSerializer.SerializeToElement("eyes/opened");
original.BaseValues["options"] = JsonSerializer.SerializeToElement(new { enabled = true, offset = new[] { 1, 2 } });
original.BaseValues["hidden"] = JsonSerializer.SerializeToElement