NavisworksTransport/UnitTests/Core/PathHelperTests.cs

39 lines
1.2 KiB
C#

using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using NavisworksTransport.Utils;
namespace NavisworksTransport.UnitTests.Core
{
[TestClass]
public class PathHelperTests
{
[TestMethod]
public void BuildDuplicatedPathName_ShouldRebuildTrailingTimestamp()
{
var now = new DateTime(2026, 3, 28, 9, 45, 12);
var duplicatedName = PathHelper.BuildDuplicatedPathName("人工_0328_081530", now);
Assert.AreEqual("副本_人工_0328_094512", duplicatedName);
}
[TestMethod]
public void BuildDuplicatedPathName_ShouldKeepPlainNameWithoutTimestamp()
{
var duplicatedName = PathHelper.BuildDuplicatedPathName("我的路径");
Assert.AreEqual("副本_我的路径", duplicatedName);
}
[TestMethod]
public void GenerateCollisionReportFileName_ShouldUseUnifiedChinesePrefixAndTimestamp()
{
var now = new DateTime(2026, 4, 9, 23, 55, 1);
var fileName = PathHelper.GenerateCollisionReportFileName("人工_0409_235000", "html", now);
Assert.AreEqual("碰撞检测报告_人工_0409_235000_20260409_235501.html", fileName);
}
}
}