public void ComputeDevelopmentManifest_UsesIdentityWhenContentRootStartsByIdentity() { // Arrange var messages = new List <string>(); var buildEngine = new Mock <IBuildEngine>(); buildEngine.Setup(e => e.LogMessageEvent(It.IsAny <BuildMessageEventArgs>())) .Callback <BuildMessageEventArgs>(args => messages.Add(args.Message)); var expectedManifest = CreateExpectedManifest( CreateIntermediateNode( ("index.html", CreateMatchNode(0, StaticWebAsset.Normalize(Path.Combine("some", "subfolder", "index.build.html"))))), Environment.CurrentDirectory); var task = new GenerateStaticWebAssetsDevelopmentManifest() { BuildEngine = buildEngine.Object, Source = "CurrentProjectId" }; var assets = new[] { CreateAsset(Path.Combine("some", "subfolder", "index.build.html"), "index.html"), }; var patterns = Array.Empty <StaticWebAssetsManifest.DiscoveryPattern>(); // Act var manifest = task.ComputeDevelopmentManifest(assets, patterns); // Assert manifest.ShouldBeEquivalentTo(expectedManifest); }
private ITaskItem CreateCandidate( string itemSpec, string sourceId, string sourceType, string relativePath, string assetKind, string assetMode) { var result = new StaticWebAsset() { Identity = Path.GetFullPath(itemSpec), SourceId = sourceId, SourceType = sourceType, ContentRoot = Directory.GetCurrentDirectory(), BasePath = "base", RelativePath = relativePath, AssetKind = assetKind, AssetMode = assetMode, AssetRole = "Primary", RelatedAsset = "", AssetTraitName = "", AssetTraitValue = "", CopyToOutputDirectory = "", CopyToPublishDirectory = "", OriginalItemSpec = itemSpec, }; result.ApplyDefaults(); result.Normalize(); return(result.ToTaskItem()); }
private static StaticWebAsset CreateAsset( string itemSpec, string sourceId, string sourceType, string relativePath, string assetKind, string assetMode, string basePath = "base", string assetRole = "Primary", string relatedAsset = "", string assetTraitName = "", string assetTraitValue = "", string copyToOutputDirectory = "Never", string copytToPublishDirectory = "PreserveNewest") { var result = new StaticWebAsset() { Identity = Path.GetFullPath(itemSpec), SourceId = sourceId, SourceType = sourceType, ContentRoot = Directory.GetCurrentDirectory(), BasePath = basePath, RelativePath = relativePath, AssetKind = assetKind, AssetMode = assetMode, AssetRole = assetRole, RelatedAsset = relatedAsset, AssetTraitName = assetTraitName, AssetTraitValue = assetTraitValue, CopyToOutputDirectory = copyToOutputDirectory, CopyToPublishDirectory = copytToPublishDirectory, OriginalItemSpec = itemSpec, }; result.ApplyDefaults(); result.Normalize(); return(result); }