Files

26 lines
881 B
C#

using ItWorx.KnowledgeHub.Domain.Infrastructure;
namespace ItWorx.KnowledgeHub.Domain.Tests;
public sealed class FileSystemPathBoundaryTests
{
[Fact]
public void Contains_accepts_the_root_and_descendants()
{
var root = Path.Combine(Path.GetTempPath(), "knowledge-imports");
Assert.True(FileSystemPathBoundary.Contains(root, root));
Assert.True(FileSystemPathBoundary.Contains(root, Path.Combine(root, "nested", "source")));
}
[Fact]
public void Contains_rejects_parent_and_prefix_sibling_paths()
{
var parent = Path.Combine(Path.GetTempPath(), $"knowledge-parent-{Guid.NewGuid():N}");
var root = Path.Combine(parent, "imports");
Assert.False(FileSystemPathBoundary.Contains(root, parent));
Assert.False(FileSystemPathBoundary.Contains(root, Path.Combine(parent, "imports-private")));
}
}