39 lines
1.2 KiB
C#
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);
|
|
}
|
|
}
|
|
}
|