Example #1
0
        public void AdditionalOutputDirectoriesAreHonored()
        {
            var outOfRootOutput = TestPath.GetParent(PathTable).Combine(PathTable, "additionalDir");
            var project         = CreateRushProject(additionalOutputDirectories: new[] { outOfRootOutput });

            var processOutputDirectories = Start()
                                           .Add(project)
                                           .ScheduleAll()
                                           .RetrieveSuccessfulProcess(project)
                                           .DirectoryOutputs;

            // There needs to be an opaque covering the additional output dir
            XAssert.IsTrue(processOutputDirectories.Any(outputDirectory => outOfRootOutput.IsWithin(PathTable, outputDirectory.Path)));
        }
Example #2
0
        public void SharedOpaquesOutsideCatchAllIsCreatedAsNeeded()
        {
            var outOfRootOutput = TestPath.GetParent(PathTable).Combine(PathTable, "outOfRoot.txt");
            var project         = CreateProjectWithPredictions(outputs: new[] { outOfRootOutput });

            var processOutputDirectories = Start()
                                           .Add(project)
                                           .ScheduleAll()
                                           .RetrieveSuccessfulProcess(project)
                                           .DirectoryOutputs;

            // There needs to be a shared opaque covering the intermediate output dir
            XAssert.IsTrue(processOutputDirectories.Any(outputDirectory => outputDirectory.IsSharedOpaque && outOfRootOutput.IsWithin(PathTable, outputDirectory.Path)));
        }