Skip to content

Commit 3db8306

Browse files
jakauppilaErikSchierboom
authored andcommitted
Adds building of the Generators solution (#448)
1 parent 6677da9 commit 3db8306

File tree

1 file changed

+16
-10
lines changed

1 file changed

+16
-10
lines changed

build.cake

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ using System.Threading.Tasks;
55
var target = Argument("target", "Default");
66
var exercise = Argument<string>("exercise", null);
77

8-
var sourceDir = "./exercises";
9-
var buildDir = "./build";
8+
var exercisesSourceDir = "./exercises";
9+
var exercisesBuildDir = "./build";
1010

1111
var parallelOptions = new ParallelOptions
1212
{
@@ -15,21 +15,21 @@ var parallelOptions = new ParallelOptions
1515

1616
Task("Clean")
1717
.Does(() => {
18-
CleanDirectory(buildDir);
18+
CleanDirectory(exercisesBuildDir);
1919
});
2020

2121
// Copy everything to build so we make no changes in the actual files.
2222
Task("CopyExercises")
2323
.IsDependentOn("Clean")
2424
.Does(() => {
25-
CopyDirectory($"{sourceDir}/{exercise}", $"{buildDir}/{exercise}");
25+
CopyDirectory($"{exercisesSourceDir}/{exercise}", $"{exercisesBuildDir}/{exercise}");
2626
});
2727

2828
Task("EnableAllTests")
2929
.IsDependentOn("CopyExercises")
3030
.Does(() => {
3131
var skipRegex = new Regex(@"Skip\s*=\s*""Remove to run test""", RegexOptions.Compiled);
32-
var testFiles = GetFiles(buildDir + "/*/*Test.cs");
32+
var testFiles = GetFiles(exercisesBuildDir + "/*/*Test.cs");
3333

3434
foreach (var testFile in testFiles) {
3535
var contents = System.IO.File.ReadAllText(testFile.FullPath);
@@ -47,17 +47,17 @@ Task("TestRefactoringProjects")
4747
// These projects have a working default implementation, and have
4848
// all the tests enabled. These should pass without any changes.
4949
var refactoringProjects =
50-
GetFiles(buildDir + "/*/TreeBuilding.csproj")
51-
+ GetFiles(buildDir + "/*/Ledger.csproj")
52-
+ GetFiles(buildDir + "/*/Markdown.csproj");
50+
GetFiles(exercisesBuildDir + "/*/TreeBuilding.csproj")
51+
+ GetFiles(exercisesBuildDir + "/*/Ledger.csproj")
52+
+ GetFiles(exercisesBuildDir + "/*/Markdown.csproj");
5353

5454
Parallel.ForEach(refactoringProjects, parallelOptions, (project) => DotNetCoreTest(project.FullPath));
5555
});
5656

5757
Task("ReplaceStubWithExample")
5858
.IsDependentOn("TestRefactoringProjects")
5959
.Does(() => {
60-
var allProjects = GetFiles(buildDir + "/*/*.csproj");
60+
var allProjects = GetFiles(exercisesBuildDir + "/*/*.csproj");
6161

6262
foreach (var project in allProjects) {
6363
var projectDir = project.GetDirectory();
@@ -73,12 +73,18 @@ Task("ReplaceStubWithExample")
7373
Task("TestUsingExampleImplementation")
7474
.IsDependentOn("ReplaceStubWithExample")
7575
.Does(() => {
76-
var allProjects = GetFiles(buildDir + "/*/*.csproj");
76+
var allProjects = GetFiles(exercisesBuildDir + "/*/*.csproj");
7777
Parallel.ForEach(allProjects, parallelOptions, (project) => DotNetCoreTest(project.FullPath));
7878
});
7979

80+
Task("BuildGenerators")
81+
.Does(() => {
82+
DotNetCoreBuild("./generators/Generators.csproj");
83+
});
84+
8085
Task("Default")
8186
.IsDependentOn("TestUsingExampleImplementation")
87+
.IsDependentOn("BuildGenerators")
8288
.Does(() => { });
8389

8490
RunTarget(target);

0 commit comments

Comments
 (0)