From aa22e3594500a42c381ea7b3ec2c7fa211abe8b7 Mon Sep 17 00:00:00 2001 From: Erik Schierboom Date: Thu, 17 Feb 2022 11:25:37 +0100 Subject: [PATCH] lint: allow overlap of solution and test files for `d` and `plsql` tracks This commit allows the `d` and `plsql` tracks to have the values in their `files.solution` and `files.test` keys in the `config.json` to overlap. --- src/lint/track_config.nim | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/lint/track_config.nim b/src/lint/track_config.nim index c3958d8e..4ea9d712 100644 --- a/src/lint/track_config.nim +++ b/src/lint/track_config.nim @@ -666,6 +666,7 @@ proc checkExerciseSlugsAndForegone(exercises: Exercises; b: var bool; proc checkFilePatternsOverlap(filePatterns: FilePatterns; trackSlug: string, b: var bool; path: Path) = + const overlappingSolutionTestTrackSlugs = ["d", "plsql"] const uniqueFilePatternCombinations = [ ("solution", "test"), ("solution", "example"), @@ -683,6 +684,9 @@ proc checkFilePatternsOverlap(filePatterns: FilePatterns; trackSlug: string, seenFilePatterns[key] = patterns.toHashSet for (key1, key2) in uniqueFilePatternCombinations: + if key1 == "solution" and key2 == "test" and trackSlug in overlappingSolutionTestTrackSlugs: + continue + let duplicatePatterns = seenFilePatterns[key1] * seenFilePatterns[key2] for duplicatePattern in duplicatePatterns: let msg =