jit-regression-test

Extract JIT regression test cases from GitHub issues into JitBlue folders.

18.2k|5.5k|Updated Sep 24, 2019
One-click install
npx skills add https://github.com/dotnet/runtime --skill jit-regression-test
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: jit-regression-test
Source: https://github.com/dotnet/runtime/tree/main/.github/skills/jit-regression-test
Command: npx skills add https://github.com/dotnet/runtime --skill jit-regression-test

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Extract standalone JIT regression test cases from a GitHub issue and organize them under the JIT regression test folder structure for the .NET runtime, enabling reproducible fixes and validation.

Core Features & Use Cases

  • From a GitHub issue, derive the issue number to name the test folder and files (e.g., issue #XXXXX → Runtime_XXXXX) and create the appropriate directory under src/tests/JIT/Regression/JitBlue/.
  • Generate a test file Runtime_<issue_number>.cs with the standard .NET Foundation license header, class name matching the file name, and a [Fact] test method that exercises the issue scenario.
  • Optionally create a Runtime_<issue_number>.csproj when environment variables or special compilation settings are required for reproduction.
  • Enforce conventions: license header, file/class naming, and repository-aligned test structure to ensure consistency across JIT regression tests.

Quick Start

Gather the GitHub issue details (issue number, reproduction code, environment variables, expected behavior), create the Runtime_<issue_number> directory under src/tests/JIT/Regression/JitBlue/, add a file named Runtime_<issue_number>.cs with a matching class and TestEntryPoint, and optionally include a Runtime_<issue_number>.csproj if needed.

Frequently Asked Questions about jit-regression-test

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I extract a JIT regression test from a GitHub issue for the dotnet runtime?

To extract a JIT regression test, you need the GitHub issue number, reproduction code, environment variables, and expected behavior. The process creates a Runtime_<issue_number>.cs file under src/tests/JIT/Regression/JitBlue/ with a [Fact] test method to reproduce the issue scenario.

When do I need a .csproj file for my JIT regression test?

You need a Runtime_<issue_number>.csproj file when your JIT regression test requires environment variables or special compilation settings to reproduce the issue. If the reproduction code runs under standard configurations, the test scaffolding only requires the .cs file.

What conventions must a JIT regression test follow in the dotnet runtime repository?

JIT regression tests must include the standard .NET Foundation license header, use a class name matching the Runtime_<issue_number>.cs file name, and reside in the correct JitBlue folder structure to ensure consistency across the dotnet/runtime repository.

Can I generate JIT regression test scaffolding without clear reproduction steps in the GitHub issue?

Generating JIT regression test scaffolding requires clear issue details including the issue number, reproduction code, expected behavior, and any environment variables. Without these inputs, the test case cannot accurately exercise the scenario or validate the regression fix.

How does deriving a test folder from a GitHub issue number work for JIT regression tests?

Deriving a test folder uses the GitHub issue number to name the directory and files, such as issue #XXXXX becoming Runtime_XXXXX. This automated naming creates the appropriate directory under src/tests/JIT/Regression/JitBlue/ to organize standalone test cases.