Files
CBDDC/tests/ZB.MOM.WW.CBDDC.Core.Tests/DatasetAwareModelTests.cs
Joseph Doherty 6c4714f666
All checks were successful
NuGet Package Publish / nuget (push) Successful in 1m13s
Add XML docs required by CommentChecker fixes
2026-02-23 04:39:25 -05:00

56 lines
1.7 KiB
C#

using System.Text.Json;
using ZB.MOM.WW.CBDDC.Core.Storage;
namespace ZB.MOM.WW.CBDDC.Core.Tests;
public class DatasetAwareModelTests
{
/// <summary>
/// Verifies <see cref="DocumentMetadata" /> defaults to the primary dataset.
/// </summary>
[Fact]
public void DocumentMetadata_ShouldDefaultDatasetId_ToPrimary()
{
var metadata = new DocumentMetadata("Users", "42", new HlcTimestamp(100, 0, "node"));
metadata.DatasetId.ShouldBe(DatasetId.Primary);
}
/// <summary>
/// Verifies dataset identifiers survive JSON round-trips for <see cref="DocumentMetadata" />.
/// </summary>
[Fact]
public void DocumentMetadata_SerializationRoundTrip_ShouldPreserveDatasetId()
{
var original = new DocumentMetadata("Users", "42", new HlcTimestamp(100, 0, "node"), false, "logs");
string json = JsonSerializer.Serialize(original);
var restored = JsonSerializer.Deserialize<DocumentMetadata>(json);
restored.ShouldNotBeNull();
restored.DatasetId.ShouldBe("logs");
}
/// <summary>
/// Verifies <see cref="SnapshotMetadata" /> defaults to the primary dataset.
/// </summary>
[Fact]
public void SnapshotMetadata_ShouldDefaultDatasetId_ToPrimary()
{
var metadata = new SnapshotMetadata();
metadata.DatasetId.ShouldBe(DatasetId.Primary);
}
/// <summary>
/// Verifies <see cref="PeerOplogConfirmation" /> defaults to the primary dataset.
/// </summary>
[Fact]
public void PeerOplogConfirmation_ShouldDefaultDatasetId_ToPrimary()
{
var confirmation = new PeerOplogConfirmation();
confirmation.DatasetId.ShouldBe(DatasetId.Primary);
}
}