Iceshrimp.NET/Iceshrimp.Tests/Serialization/JsonLdTests.cs

39 lines
No EOL
1.1 KiB
C#

using Iceshrimp.Backend.Core.Federation.ActivityStreams;
using Iceshrimp.Backend.Core.Federation.ActivityStreams.Types;
namespace Iceshrimp.Tests.Serialization;
[TestClass]
public class JsonLdTests
{
private readonly ASActor _actor = MockObjects.ASActor;
[TestMethod]
public void RoundtripTest()
{
var expanded = LdHelpers.Expand(_actor);
expanded.Should().NotBeNull();
var deserialized = ASObject.Deserialize(expanded);
deserialized.Should().NotBeNull();
deserialized.Should().BeEquivalentTo(_actor);
var canonicalized = LdHelpers.Canonicalize(expanded);
canonicalized.Should().NotBeNull();
var compacted = LdHelpers.Compact(expanded);
compacted.Should().NotBeNull();
var expanded2 = LdHelpers.Expand(compacted);
expanded2.Should().NotBeNull();
expanded2.Should().BeEquivalentTo(expanded);
var compacted2 = LdHelpers.Compact(expanded2);
compacted2.Should().NotBeNull();
compacted2.Should().BeEquivalentTo(compacted);
var canonicalized2 = LdHelpers.Canonicalize(expanded2);
canonicalized2.Should().NotBeNull();
canonicalized2.Should().BeEquivalentTo(canonicalized);
}
}