81 references to BuildLevel
dotnet (27)
Commands\Run\RunCommand.cs (7)
151
projectFactory = CanUseRunPropertiesForCscBuiltProgram(
BuildLevel
.None, cacheEntry) ? null : virtualCommand.CreateProjectInstance;
335
private static bool CanUseRunPropertiesForCscBuiltProgram(
BuildLevel
level, RunFileBuildCacheEntry? previousCache)
337
return level ==
BuildLevel
.Csc ||
338
(level ==
BuildLevel
.None && previousCache?.BuildLevel ==
BuildLevel
.Csc);
816
usedMSBuild: virtualCommand.LastBuild.Level is
BuildLevel
.All,
817
usedRoslynCompiler: virtualCommand.LastBuild.Level is
BuildLevel
.Csc);
Commands\Run\VirtualProjectBuildingCommand.cs (20)
156
public (
BuildLevel
Level, CacheInfo? Cache) LastBuild { get; private set; }
199
LastBuild = (
BuildLevel
.None, Cache: null);
207
LastBuild = (
BuildLevel
.None, Cache: null);
220
cache.CurrentEntry.BuildLevel =
BuildLevel
.All;
221
LastBuild = (
BuildLevel
.All, cache);
225
var
buildLevel = GetBuildLevel(out cache);
229
if (buildLevel is
BuildLevel
.None)
243
if (buildLevel is
BuildLevel
.Csc)
276
Debug.Assert(buildLevel is
BuildLevel
.All or
BuildLevel
.Csc);
675
if (PreviousEntry?.BuildLevel !=
BuildLevel
.Csc)
896
private
BuildLevel
GetBuildLevel(out CacheInfo cache)
901
return
BuildLevel
.None;
932
return
BuildLevel
.Csc;
942
return
BuildLevel
.All;
950
return
BuildLevel
.All;
957
return
BuildLevel
.All;
965
return
BuildLevel
.All;
987
return
BuildLevel
.Csc;
2007
public
BuildLevel
BuildLevel { get; set; }
dotnet.Tests (54)
CommandTests\Run\RunFileTests.cs (54)
2568
Build(testInstance,
BuildLevel
.Csc, expectedOutput: "Hello v1");
2570
Build(testInstance,
BuildLevel
.None, expectedOutput: "Hello v1");
2572
Build(testInstance,
BuildLevel
.None, expectedOutput: "Hello v1");
2577
Build(testInstance,
BuildLevel
.Csc);
2579
Build(testInstance,
BuildLevel
.None);
2584
Build(testInstance,
BuildLevel
.None);
2596
Build(testInstance,
BuildLevel
.All, expectedOutput: """
2601
Build(testInstance,
BuildLevel
.None, expectedOutput: """
2618
Build(testInstance,
BuildLevel
.All);
2629
Build(testInstance,
BuildLevel
.None);
2632
Build(testInstance,
BuildLevel
.All, args: ["--no-cache"], expectedOutput: """
2639
Build(testInstance,
BuildLevel
.Csc);
2642
Build(testInstance,
BuildLevel
.All, args: ["--no-cache"]);
2644
Build(testInstance,
BuildLevel
.None);
2647
Build(testInstance,
BuildLevel
.None, args: ["--", "test-arg"], expectedOutput: """
2653
Build(testInstance,
BuildLevel
.All, args: ["-c", "Release"], expectedOutput: """
2659
Build(testInstance,
BuildLevel
.None, args: ["-c", "Release"], expectedOutput: """
2665
Build(testInstance,
BuildLevel
.Csc);
2675
Build(testInstance,
BuildLevel
.Csc);
2678
private void Build(TestDirectory testInstance,
BuildLevel
expectedLevel, ReadOnlySpan<string> args = default, string expectedOutput = "Hello from Program", string programFileName = "Program.cs")
2682
BuildLevel
.None => CliCommandStrings.NoBinaryLogBecauseUpToDate + Environment.NewLine,
2683
BuildLevel
.Csc => CliCommandStrings.NoBinaryLogBecauseRunningJustCsc + Environment.NewLine,
2684
BuildLevel
.All => string.Empty,
2701
BuildLevel
.None or
BuildLevel
.Csc => [],
2702
BuildLevel
.All => ["msbuild.binlog"],
2735
Build(testInstance,
BuildLevel
.All, expectedOutput: "[MyString, TestValue]");
2740
Build(testInstance,
BuildLevel
.None, expectedOutput: "[MyString, TestValue]"); // note: outdated output (build skipped)
2745
Build(testInstance,
BuildLevel
.Csc, expectedOutput: "[MyString, TestValue]"); // note: outdated output (only CSC used)
2747
Build(testInstance,
BuildLevel
.All, ["--no-cache"], expectedOutput: "[MyString, UpdatedValue]");
2763
Build(testInstance,
BuildLevel
.Csc, expectedOutput: "v1");
2772
Build(testInstance,
BuildLevel
.Csc, expectedOutput: "v2");
2775
Build(testInstance,
BuildLevel
.All, args: ["-c", "Release"], expectedOutput: """
2898
Build(testInstance,
BuildLevel
.All, expectedOutput: "() => 2");
2970
Build(testInstance,
BuildLevel
.Csc, expectedOutput: "v1", programFileName: programFileName);
2994
Build(testInstance,
BuildLevel
.All, expectedOutput: "v1 Release");
2996
Build(testInstance,
BuildLevel
.None, expectedOutput: "v1 Release");
3001
Build(testInstance,
BuildLevel
.Csc, expectedOutput: "v2 Release");
3006
Build(testInstance,
BuildLevel
.Csc, expectedOutput: "v3 Release");
3012
Build(testInstance,
BuildLevel
.All, expectedOutput: "v3 ");
3015
Build(testInstance,
BuildLevel
.All, ["--no-cache"], expectedOutput: "v3 ");
3020
Build(testInstance,
BuildLevel
.Csc, expectedOutput: "v4 ");
3023
Build(testInstance,
BuildLevel
.All, args: ["-c", "Release"], expectedOutput: "v4 Release");
3025
Build(testInstance,
BuildLevel
.All, expectedOutput: "v4 ");
3050
Build(testInstance,
BuildLevel
.All, expectedOutput: "v1 Release", programFileName: programFileName);
3055
Build(testInstance,
BuildLevel
.Csc, expectedOutput: "v2 Release", programFileName: programFileName);
3101
Build(testInstance,
BuildLevel
.All, expectedOutput: "v1 Hello from Lib v1", programFileName: programFileName);
3110
Build(testInstance,
BuildLevel
.All, expectedOutput: "v2 Hello from Lib v2", programFileName: programFileName);
3151
Build(testInstance,
BuildLevel
.All, expectedOutput: "v1 Release");
3156
Build(testInstance, canSkipMSBuild ?
BuildLevel
.Csc :
BuildLevel
.All, expectedOutput: "v2 Release");
3179
Build(testInstance,
BuildLevel
.All, expectedOutput: "v1 Release");
3185
Build(testInstance,
BuildLevel
.Csc, expectedOutput: "v2 Release");
3192
Build(testInstance,
BuildLevel
.Csc, expectedOutput: "v3 ");