Run tests / Refactor dotTrace and dotMemory diagnosers
All the common logic of profilers moved into SnapshotProfilerBase
which is the base for DotMemoryDiagnoser
and DotTraceDiagnoser
. The common class is inside the main package, so it can be reused by other tools (not only by JetBrains, applicable for any command-line profiler). The dotTrace/dotMemory diagnoser classes have unique simple implementation. IsSupported
is duplicated on purpose since future versions of dotTrace and dotMemory may hav...
#931
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: run-tests | |
run-name: Run tests / ${{ github.event.head_commit.message }} | |
on: | |
pull_request: | |
push: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.ref || github.run_id }} | |
cancel-in-progress: true | |
jobs: | |
test-windows-core: | |
runs-on: windows-latest | |
steps: | |
- name: Disable Windows Defender | |
run: Set-MpPreference -DisableRealtimeMonitoring $true | |
shell: powershell | |
- uses: actions/checkout@v4 | |
- name: Run task 'build' | |
shell: cmd | |
run: ./build.cmd build | |
- name: Run task 'in-tests-core' | |
shell: cmd | |
run: ./build.cmd in-tests-core -e | |
- name: Upload test results | |
uses: actions/upload-artifact@v3 | |
if: always() | |
with: | |
name: test-windows-core-trx | |
path: "**/*.trx" | |
test-windows-full: | |
runs-on: windows-latest | |
steps: | |
- name: Disable Windows Defender | |
run: Set-MpPreference -DisableRealtimeMonitoring $true | |
shell: powershell | |
- uses: actions/checkout@v4 | |
- name: Run task 'build' | |
shell: cmd | |
run: ./build.cmd build | |
- name: Run task 'in-tests-full' | |
shell: cmd | |
run: ./build.cmd in-tests-full -e | |
- name: Upload test results | |
uses: actions/upload-artifact@v4 | |
if: always() | |
with: | |
name: test-windows-full-trx | |
path: "**/*.trx" | |
test-linux: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Clang | |
uses: egor-tensin/setup-clang@v1 | |
with: | |
version: latest | |
platform: x64 | |
- name: Set up zlib-static | |
run: sudo apt-get install -y libkrb5-dev | |
- name: Set up node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: "20" | |
- name: Set up v8 | |
run: npm install jsvu -g && jsvu --os=linux64 --engines=v8 && echo "$HOME/.jsvu/bin" >> $GITHUB_PATH | |
- name: Install wasm-tools workload | |
run: ./build.cmd install-wasm-tools | |
- name: Run task 'build' | |
run: ./build.cmd build | |
- name: Run task 'unit-tests' | |
run: ./build.cmd unit-tests -e | |
- name: Run task 'in-tests-core' | |
run: ./build.cmd in-tests-core -e | |
- name: Upload test results | |
uses: actions/upload-artifact@v4 | |
if: always() | |
with: | |
name: test-linux-trx | |
path: "**/*.trx" | |
test-macos: | |
runs-on: macos-13 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: "20" | |
- name: Set up v8 | |
run: npm install jsvu -g && jsvu --os=mac64 --engines=v8 && echo "$HOME/.jsvu/bin" >> $GITHUB_PATH | |
- name: Install wasm-tools workload | |
run: ./build.cmd install-wasm-tools | |
- name: Run task 'build' | |
run: ./build.cmd build | |
- name: Run task 'unit-tests' | |
run: ./build.cmd unit-tests -e | |
- name: Run task 'in-tests-core' | |
run: ./build.cmd in-tests-core -e | |
- name: Upload test results | |
uses: actions/upload-artifact@v4 | |
if: always() | |
with: | |
name: test-macos-trx | |
path: "**/*.trx" | |
test-pack: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Clang | |
uses: egor-tensin/setup-clang@v1 | |
with: | |
version: latest | |
platform: x64 | |
- name: Set up zlib-static | |
run: sudo apt-get install -y libkrb5-dev | |
- name: Run task 'pack' | |
run: ./build.cmd pack | |
spellcheck-docs: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
name: Setup node | |
with: | |
node-version: "18" | |
- name: Install cSpell | |
run: npm install -g cspell@8.0.0 | |
- name: Copy cSpell config | |
run: cp ./build/cSpell.json ./cSpell.json | |
- name: Run cSpell | |
run: cspell --config ./cSpell.json "docs/**/*.md" --no-progress |