Enhance CMake configuration and CI/CD workflows for improved testing
- Updated CMakeLists.txt to introduce options for enabling experimental tests and minimal CI builds. - Modified CMakePresets.json to refine test presets, including stable and experimental test configurations. - Enhanced CI workflows in ci.yml to streamline testing processes, ensuring stable tests are prioritized and experimental tests are run separately. - Added new documentation files outlining the CI/CD testing strategy and testing categories for better clarity on testing practices. - Improved test discovery in CMakeLists.txt to simplify labeling and enhance CI efficiency.
This commit is contained in:
@@ -208,16 +208,16 @@
|
||||
],
|
||||
"testPresets": [
|
||||
{
|
||||
"name": "default",
|
||||
"name": "stable",
|
||||
"configurePreset": "default",
|
||||
"displayName": "Default Tests",
|
||||
"displayName": "Stable Tests (Release Ready)",
|
||||
"execution": {
|
||||
"noTestsAction": "error",
|
||||
"stopOnFailure": false
|
||||
"stopOnFailure": true
|
||||
},
|
||||
"filter": {
|
||||
"exclude": {
|
||||
"label": "ROM_DEPENDENT"
|
||||
"include": {
|
||||
"label": "STABLE"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -228,19 +228,48 @@
|
||||
"execution": {
|
||||
"noTestsAction": "error",
|
||||
"stopOnFailure": false
|
||||
},
|
||||
"filter": {
|
||||
"exclude": {
|
||||
"label": "EXPERIMENTAL"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "ci",
|
||||
"configurePreset": "ci",
|
||||
"displayName": "CI Tests (no ROM)",
|
||||
"displayName": "CI Tests (stable only)",
|
||||
"execution": {
|
||||
"noTestsAction": "error",
|
||||
"stopOnFailure": true
|
||||
},
|
||||
"filter": {
|
||||
"include": {
|
||||
"label": "STABLE"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "experimental",
|
||||
"configurePreset": "debug",
|
||||
"displayName": "Experimental Tests",
|
||||
"execution": {
|
||||
"noTestsAction": "ignore",
|
||||
"stopOnFailure": false
|
||||
},
|
||||
"filter": {
|
||||
"exclude": {
|
||||
"label": "ROM_DEPENDENT"
|
||||
"include": {
|
||||
"label": "EXPERIMENTAL"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "asar-only",
|
||||
"configurePreset": "default",
|
||||
"displayName": "Asar Tests Only",
|
||||
"filter": {
|
||||
"include": {
|
||||
"name": "*Asar*"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -253,16 +282,6 @@
|
||||
"label": "UNIT_TEST"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "integration-only",
|
||||
"configurePreset": "dev",
|
||||
"displayName": "Integration Tests Only",
|
||||
"filter": {
|
||||
"include": {
|
||||
"label": "INTEGRATION_TEST"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"packagePresets": [
|
||||
|
||||
Reference in New Issue
Block a user