Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 16 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -276,7 +276,22 @@ jobs:
npx hereby test || true

- run: git add .
- run: git diff --staged --exit-code --stat

- name: Check for changes
id: check-changes
run: |
if ! git diff --staged --exit-code --quiet; then
git diff --staged --exit-code --stat
git diff --staged > generate_changes.patch
exit 1
fi

- name: Upload generate diff artifact
if: ${{ failure() && steps.check-changes.conclusion == 'failure' }}
uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
with:
name: generate_changes.patch
path: generate_changes.patch

tidy:
runs-on: ubuntu-latest
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -199,3 +199,4 @@ custom-gcl.hash

!internal/fourslash/_scripts/failingTests.txt
!internal/fourslash/_scripts/manualTests.txt
!internal/fourslash/_scripts/crashingTests.txt
12 changes: 12 additions & 0 deletions internal/fourslash/_scripts/crashingTests.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
TestCompletionsAfterJSDoc
TestCompletionsImport_require_addToExisting
TestCompletionsUniqueSymbol_import
TestFindReferencesBindingPatternInJsdocNoCrash1
TestFindReferencesBindingPatternInJsdocNoCrash2
TestGetOccurrencesIfElseBroken
TestImportNameCodeFix_importType8
TestJsdocLink2
TestJsdocLink3
TestJsdocLink6
TestQuickInfoAlias
TestQuickInfoBindingPatternInJsdocNoCrash1
7 changes: 7 additions & 0 deletions internal/fourslash/_scripts/updateFailing.mts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import path from "path";
import which from "which";

const failingTestsPath = path.join(import.meta.dirname, "failingTests.txt");
const crashingTestsPath = path.join(import.meta.dirname, "crashingTests.txt");

function main() {
const go = which.sync("go");
Expand All @@ -24,13 +25,19 @@ function main() {
}
const failRegex = /--- FAIL: ([\S]+)/gm;
const failingTests: string[] = [];
const crashingRegex = /^=== NAME ([\S]+)\n.*InternalError.*$/gm;
const crashingTests: string[] = [];
let match;

while ((match = failRegex.exec(testOutput)) !== null) {
failingTests.push(match[1]);
}
while ((match = crashingRegex.exec(testOutput)) !== null) {
crashingTests.push(match[1]);
}

fs.writeFileSync(failingTestsPath, failingTests.sort((a, b) => a.localeCompare(b, "en-US")).join("\n") + "\n", "utf-8");
fs.writeFileSync(crashingTestsPath, crashingTests.sort((a, b) => a.localeCompare(b, "en-US")).join("\n") + "\n", "utf-8");
}

main();
Loading