Exemplo n.º 1
0
        public void DistinctInputsAndOutputsAreAggregated()
        {
            var predictors = new IProjectStaticPredictor[]
            {
                new MockPredictor(new StaticPredictions(
                                      new[] { new BuildInput(@"foo\bar1", false) },
                                      new[] { new BuildOutputDirectory(@"blah\boo1") })),
                new MockPredictor2(new StaticPredictions(
                                       new[] { new BuildInput(@"foo\bar2", false) },
                                       new[] { new BuildOutputDirectory(@"blah\boo2") })),
            };

            var executor = new ProjectStaticPredictionExecutor(@"c:\repo", predictors);

            var project = TestHelpers.CreateProjectFromRootElement(ProjectRootElement.Create());

            StaticPredictions predictions = executor.PredictInputsAndOutputs(project);

            BuildInput[] expectedInputs =
            {
                new BuildInput(@"foo\bar1", false, "MockPredictor"),
                new BuildInput(@"foo\bar2", false, "MockPredictor2"),
            };

            BuildOutputDirectory[] expectedBuildOutputDirectories =
            {
                new BuildOutputDirectory(@"blah\boo1", "MockPredictor"),
                new BuildOutputDirectory(@"blah\boo2", "MockPredictor2"),
            };

            predictions.AssertPredictions(expectedInputs, expectedBuildOutputDirectories);
        }
Exemplo n.º 2
0
        public void DuplicateInputsAndOutputsMergePredictedBys()
        {
            var predictors = new IProjectStaticPredictor[]
            {
                new MockPredictor(new StaticPredictions(
                                      new[] { new BuildInput(@"foo\bar", false) },
                                      new[] { new BuildOutputDirectory(@"blah\boo") })),
                new MockPredictor2(new StaticPredictions(
                                       new[] { new BuildInput(@"foo\bar", false) },
                                       new[] { new BuildOutputDirectory(@"blah\boo") })),
            };

            var executor = new ProjectStaticPredictionExecutor(@"c:\repo", predictors);

            var project = TestHelpers.CreateProjectFromRootElement(ProjectRootElement.Create());

            StaticPredictions predictions = executor.PredictInputsAndOutputs(project);

            predictions.AssertPredictions(
                new[] { new BuildInput(@"foo\bar", false, "MockPredictor", "MockPredictor2") },
                new[] { new BuildOutputDirectory(@"blah\boo", "MockPredictor", "MockPredictor2") });
        }