Files
git.stella-ops.org/src/__Libraries/StellaOps.HybridLogicalClock.Tests/HlcTimestampTests.Now.cs

26 lines
786 B
C#

// <copyright file="HlcTimestampTests.Now.cs" company="StellaOps">
// Copyright (c) StellaOps. Licensed under BUSL-1.1.
// </copyright>
using FluentAssertions;
using Microsoft.Extensions.Time.Testing;
using System;
using Xunit;
namespace StellaOps.HybridLogicalClock.Tests;
public sealed partial class HlcTimestampTests
{
[Fact]
public void Now_UsesTimeProviderAndSetsNodeId()
{
var fixedTime = new DateTimeOffset(2024, 1, 1, 0, 0, 0, TimeSpan.Zero);
var timeProvider = new FakeTimeProvider(fixedTime);
var timestamp = HlcTimestamp.Now("node-1", timeProvider);
timestamp.PhysicalTime.Should().Be(fixedTime.ToUnixTimeMilliseconds());
timestamp.NodeId.Should().Be("node-1");
timestamp.LogicalCounter.Should().Be(0);
}
}