public void ExplicitLinkPath() { string configRootDirectory = "test"; string target = "file.ext"; string expectedFullTargetPath = $"{configRootDirectory}{Path.DirectorySeparatorChar}{target}"; string explicitLinkPath = $"{Path.DirectorySeparatorChar}some{Path.DirectorySeparatorChar}path"; var linkSpec = new LinkTaskSpecification() { Links = new Dictionary <string, object>() { { target, explicitLinkPath }, }, }; var actualLinks = linkSpec.GetLinkConfigurations(configRootDirectory); Assert.Equal(1, actualLinks.Count); Assert.Contains(expectedFullTargetPath, actualLinks); IEnumerable <string> links = actualLinks[expectedFullTargetPath]; Assert.Single(links); Assert.Equal(explicitLinkPath, links.Single()); }
private static void TestPlatformLinks(bool predicate, SymlinkSpecification symlinkSpec) { string configRootDirectory = "test"; string target = "file.ext"; string expectedFullTargetPath = $"{configRootDirectory}{Path.DirectorySeparatorChar}{target}"; var linkSpec = new LinkTaskSpecification() { Links = new Dictionary <string, object>() { [target] = symlinkSpec, }, }; var actualLinks = linkSpec.GetLinkConfigurations(configRootDirectory); if (predicate) { Assert.Equal(1, actualLinks.Count); Assert.Contains(expectedFullTargetPath, actualLinks); IEnumerable <string> links = actualLinks[expectedFullTargetPath]; Assert.Single(links); Assert.Equal($"{Platform.Home}{Path.DirectorySeparatorChar}.{target}", links.Single()); } else { Assert.Empty(actualLinks); } }
public void NullLinkPathTargetHasPrefixedDot() { string configRootDirectory = "test"; string target = ".file.ext"; string expectedFullTargetPath = $"{configRootDirectory}{Path.DirectorySeparatorChar}{target}"; var linkSpec = new LinkTaskSpecification() { Links = new Dictionary <string, object>() { { target, null }, }, }; var actualLinks = linkSpec.GetLinkConfigurations(configRootDirectory); Assert.Equal(1, actualLinks.Count); Assert.Contains(expectedFullTargetPath, actualLinks); IEnumerable <string> links = actualLinks[expectedFullTargetPath]; Assert.Single(links); Assert.Equal($"{Platform.Home}{Path.DirectorySeparatorChar}{target}", links.Single()); }