Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
284 commits
Select commit Hold shift + click to select a range
789325f
More frameworks
OsirisTerje Apr 3, 2024
c15a488
removing global.json
OsirisTerje Apr 3, 2024
a85627f
formatting yml
OsirisTerje Apr 3, 2024
300e721
frameworks again
OsirisTerje Apr 3, 2024
6e03c18
log messages
OsirisTerje Apr 3, 2024
95a7dcb
console writeline
OsirisTerje Apr 3, 2024
72062fc
logging
OsirisTerje Apr 3, 2024
f30a4ad
check for null context
OsirisTerje Apr 3, 2024
09af4f3
updated cake
OsirisTerje Apr 3, 2024
924fbc8
upping cake verbosity
OsirisTerje Apr 3, 2024
36f318c
then at the right place too
OsirisTerje Apr 3, 2024
93694a7
get all history
OsirisTerje Apr 3, 2024
ee67b1b
Added net8 builds for netcore console. Removed diagnostics
OsirisTerje Apr 3, 2024
aca8f01
Use Microsoft.Extensions.DependencyModel to locate dependencies
veleek Jan 9, 2024
4635f54
fix assembly dependencies resolver for netcore
veleek Jan 9, 2024
50e280c
fix assembly dependencies resolver for netcore
svg2003 Feb 12, 2023
5a94cb3
Use custom context only (don't use assemblies, loaded into AppDomain).
svg2003 Apr 6, 2023
3a6d2e8
renamed "_log" variable into "log"
svg2003 Apr 15, 2023
097056f
Use same pattern for loading unmanaged assemblies as managed assemblies.
veleek Dec 15, 2023
87d6996
Add extra dependencies for .NET 5 and .NET 6
veleek Feb 21, 2024
5f9515f
Add Microsoft.Extensions.DependencyModel stuff ro .NET 7 and .NET 8 w…
veleek Apr 4, 2024
8b77e76
Merge pull request #1396 from nunit/githubbuilds
OsirisTerje Apr 4, 2024
a0e18d3
Merge pull request #1376 from veleek/veleek/native-assembly-resolve-v315
OsirisTerje May 22, 2024
6602d54
Get Version3X branch building
CharliePoole May 29, 2024
ad03651
Fix version3X HEAD so it builds
CharliePoole May 29, 2024
02d8e0d
Changes from code review
CharliePoole May 31, 2024
823da3d
Move AvailableRuntimes to RuntimeFrameworkService
CharliePoole Jun 6, 2024
e6bfef3
Run under 32bit .NET Core as needed
CharliePoole Jun 7, 2024
0d6a2aa
Eliminate use of 'Any' subdirectory of the netcore runner
CharliePoole Jun 9, 2024
f861b05
Add multi-target extension patterns to the .addins files
CharliePoole Jun 10, 2024
c8fe139
Addins files for agents; test NUnitProjectLoader extension
CharliePoole Jun 10, 2024
2823733
Make runner and agents long-path-aware
CharliePoole Jun 11, 2024
1bdc050
Create platform-support.md
CharliePoole Jun 12, 2024
69a9490
Fix exception thrown for .NET Standard assemblies... again!
CharliePoole Jun 12, 2024
f032bb5
Add a unit test we missed
CharliePoole Jun 12, 2024
ee1d830
Update platform-support.md
CharliePoole Jun 12, 2024
357ab4d
Create separate folder for cake scripts used by all supported projects
CharliePoole Jun 13, 2024
350e4fa
Update platform-support.md
CharliePoole Jun 22, 2024
3d20424
Update platform-support.md
CharliePoole Jun 27, 2024
4e5535a
Implement general recipe for future use with this and other NUnit pro…
CharliePoole Jun 20, 2024
3552056
Update platform-support.md
CharliePoole Jun 29, 2024
869bda4
Update platform-support.md
CharliePoole Jun 29, 2024
3b94aec
Update platform-support.md
CharliePoole Jun 30, 2024
72da6b3
Merge pull request #1421 from nunit/CharliePoole-patch-1
CharliePoole Jun 30, 2024
c2f7344
Update doc title; skip commits for docs only
CharliePoole Jun 30, 2024
84e45ad
Merge pull request #1431 from nunit/updt-platforms
CharliePoole Jun 30, 2024
61b9710
Changes from code review
CharliePoole Jul 2, 2024
c4d49d0
Merge pull request #1426 from nunit/issue-1422
CharliePoole Jul 2, 2024
ad6848a
Get Api keys from environment
CharliePoole Jul 2, 2024
48d96aa
Merge pull request #1436 from nunit/issue-1428b
CharliePoole Jul 2, 2024
77074c7
Eliminate MSI package
CharliePoole Jul 2, 2024
e994aef
Merge pull request #1437 from nunit/issue-1434
CharliePoole Jul 3, 2024
862955d
Eliminate .NET 2.0, 3.5 and 4.0 builds
CharliePoole Jul 3, 2024
8072670
Merge pull request #1433 from nunit/issue-1430
CharliePoole Jul 3, 2024
49633eb
Eliminate .NET 5.0 builds
CharliePoole Jul 3, 2024
8398790
Merge pull request #1438 from nunit/issue-1428
CharliePoole Jul 3, 2024
313bc2a
Improved visibility of unit test errors
CharliePoole Jul 5, 2024
d47fecb
Merge pull request #1440 from nunit/issue-1439
CharliePoole Jul 11, 2024
2b2d49a
Update recipe to match project loader
CharliePoole Jul 12, 2024
2946dd6
Merge pull request #1442 from nunit/updt-recipe
CharliePoole Jul 12, 2024
4a735ef
Use shared nunit cake recipe
CharliePoole Jul 15, 2024
0678946
Merge pull request #1444 from nunit/issue-1443
CharliePoole Jul 15, 2024
c6e4af7
Add test using V2 Result Writer
CharliePoole Jul 16, 2024
91edb30
Merge pull request #1445 from nunit/issue-1418
CharliePoole Jul 17, 2024
533876c
Add target for re-publishing symbol packages
CharliePoole Jul 17, 2024
d74da04
Merge pull request #1448 from nunit/issue-1447
CharliePoole Jul 17, 2024
14e0099
Remove duplicate package id
CharliePoole Jul 17, 2024
83d154c
Merge pull request #1450 from nunit/issue-1449
CharliePoole Jul 17, 2024
fc73722
Update build.cake
CharliePoole Jul 18, 2024
a2c6926
Fix errors in dotnet tool package
CharliePoole Jul 18, 2024
5e16ca2
Merge pull request #1451 from nunit/issue-1446
CharliePoole Jul 18, 2024
6fec5cf
Probe assemblies with .exe extension when loading from the test assem…
k15tfu Aug 9, 2024
152ce2e
Merge pull request #1455 from k15tfu/fix-loading-exe-assemblies-TestA…
CharliePoole Aug 9, 2024
0ff1ed0
Improve Github Actions CI workflow (#1453)
veleek Aug 10, 2024
e3300f9
Update to use latest release of recipe
CharliePoole Aug 12, 2024
6b10d87
Merge pull request #1456 from nunit/updt-recipe
CharliePoole Aug 12, 2024
9258f22
Limit running of X86 tests under GitHub actions until we resolve issu…
CharliePoole Aug 13, 2024
f8900c6
Merge pull request #1459 from nunit/issue-1458
CharliePoole Aug 13, 2024
a25dcad
Run all unit tests under NUnitLite
CharliePoole Aug 13, 2024
12f638b
Merge pull request #1460 from nunit/issue-1457
CharliePoole Aug 13, 2024
1f5720c
Replace AppVeyor with GitHub workflow
CharliePoole Aug 13, 2024
27d6514
Merge pull request #1461 from nunit/issue-1435
CharliePoole Aug 13, 2024
1230675
Fix error in PublishDraftRelease.yml
CharliePoole Aug 13, 2024
9f7aae9
Fix error in PublishDraftRelease.yml\
CharliePoole Aug 13, 2024
9e119bd
Merge pull request #1462 from nunit/fixup
CharliePoole Aug 13, 2024
f900b1f
Refactoring: replace AddinFileReader with AddinFile; temporarily susp…
CharliePoole Aug 18, 2024
c23d1e4
Refactoring: Split tests for ExtensionManager and ExtensionService
CharliePoole Aug 18, 2024
9454108
Validate addins file while reading it
CharliePoole Aug 21, 2024
355432d
Merge pull request #1463 from nunit/issue-1415
CharliePoole Aug 21, 2024
e743826
Eliminate unnecessary errors when processing non-test assemblies
CharliePoole Sep 7, 2024
d884dd9
Merge pull request #1473 from nunit/issue-1465
CharliePoole Sep 7, 2024
e3d96c1
Add more package tests and refactor
CharliePoole Sep 9, 2024
7ce369e
Hadnle unmanaged executables without throwing
CharliePoole Sep 9, 2024
38037d4
Merge pull request #1474 from nunit/issue-1468
CharliePoole Sep 9, 2024
3abcf80
Update to latest dev build of recipe, 1.2.0-dev00007
CharliePoole Sep 13, 2024
0842fd5
Merge pull request #1476 from nunit/updt-recipe
CharliePoole Sep 13, 2024
359e19c
Handle invalid chars sent from the framework
CharliePoole Sep 14, 2024
5056d41
Merge pull request #1477 from nunit/issue-1469
CharliePoole Sep 14, 2024
d2cf4f7
Update header and help to clarify which console runner is in use
CharliePoole Sep 15, 2024
3f10f67
Merge pull request #1481 from nunit/issue-1467
CharliePoole Sep 15, 2024
04af472
Add test to confirm issue 1383 is fixed
CharliePoole Sep 15, 2024
d22ffe9
Merge pull request #1482 from nunit/issue-1383
CharliePoole Sep 15, 2024
fac8914
Reorganize assembly resolution; fix error loading WindowsBase.dll
CharliePoole Sep 16, 2024
1d0b96a
Upgrade to use C# 11
CharliePoole Sep 17, 2024
03c865e
Merge pull request #1483 from nunit/issue-1466
CharliePoole Sep 17, 2024
e1c9751
Upgrade to use C# 11
CharliePoole Sep 17, 2024
2a180d5
Merge pull request #1484 from nunit/issue-1479
CharliePoole Sep 17, 2024
cf1dea6
Place output from TestData projects under a separate directory
CharliePoole Sep 17, 2024
1089e14
Update tests to NUnit 4.1.0 and 3.14.0
CharliePoole Sep 18, 2024
55d30d7
Upgrade from NUnit 4.1.0 to 4.2.2
CharliePoole Sep 18, 2024
b6196ab
Merge pull request #1485 from nunit/issue-1478
CharliePoole Sep 18, 2024
64fb375
Add info about @FILE to help options; refactor ShowHelp()
CharliePoole Sep 19, 2024
9325458
Merge pull request #1486 from nunit/issue-1359
CharliePoole Sep 19, 2024
c0bf856
Set `AppContext.BaseDirectory` when running under .NET 8.0
CharliePoole Sep 30, 2024
2d972df
Merge pull request #1489 from nunit/issue-1488
CharliePoole Sep 30, 2024
6aa879a
Reinstante teamcity extension as part of our packaging
CharliePoole Oct 2, 2024
9456170
Merge pull request #1490 from nunit/issue-1471
CharliePoole Oct 2, 2024
fd9ff74
Create net80 runner
CharliePoole Oct 2, 2024
e662ebf
Merge pull request #1491 from nunit/net80-runner
CharliePoole Oct 3, 2024
8d9a36b
Build Engine under .NET 6.0 and 8.0
CharliePoole Oct 3, 2024
c21d773
Fix packaging errors
CharliePoole Oct 4, 2024
79cb823
Merge pull request #1494 from nunit/net80-engine
CharliePoole Oct 4, 2024
f05b3d9
Honor DOTNET_ROOT environment variables
CharliePoole Oct 5, 2024
faeafe1
Merge pull request #1495 from nunit/issue-1381
CharliePoole Oct 5, 2024
9169a71
Add tests of NUnit V2 Driver
CharliePoole Oct 6, 2024
dee8764
Add tests using NUnit V2 Driver
CharliePoole Oct 7, 2024
96c2dad
Merge pull request #1496 from nunit/issue-1418
CharliePoole Oct 7, 2024
7e668cb
Update recipe to version 1.2.0
CharliePoole Oct 8, 2024
9a98ee0
Merge pull request #1497 from nunit/updt-recipe
CharliePoole Oct 8, 2024
8f04dfa
Additional tests for the netcore runners
CharliePoole Oct 8, 2024
e6ab451
Merge pull request #1498 from nunit/more-tests
CharliePoole Oct 8, 2024
89ec635
Eliminate .NET 6.0 build of the engine
CharliePoole Oct 20, 2024
4b99290
Merge pull request #1501 from nunit/issue-1492
CharliePoole Oct 20, 2024
63d671b
Eliminate .NET Standard 2.0 build of nunit.engine
CharliePoole Oct 20, 2024
3b9cb28
Eliminate .NET Standard 2.0 build of nunit.engine.core
CharliePoole Oct 21, 2024
0ec572c
Merge pull request #1503 from nunit/issue-1502
CharliePoole Oct 21, 2024
d8c16df
Update README
CharliePoole Oct 30, 2024
d238d33
Merge pull request #1509 from nunit/issue-1508
CharliePoole Oct 30, 2024
de2add5
Throw exception if --teamcity is specified but the extension is not p…
CharliePoole Nov 27, 2024
2a2b967
Merge pull request #1517 from nunit/issue-1507
CharliePoole Nov 27, 2024
653876a
Implement an algorithm to find extensions
CharliePoole Oct 21, 2024
bf59198
Revise api in response to comments
CharliePoole Nov 1, 2024
40f826a
Extract code from loop
CharliePoole Nov 28, 2024
01294c2
Merge pull request #1518 from nunit/issue-1504
CharliePoole Nov 28, 2024
d106b60
Add a few tests for an issue under open investigation
stevenaw Nov 9, 2024
9ae2fe1
update format to one which works
stevenaw Nov 9, 2024
1af35ed
Fix exception arising from parsing test name
CharliePoole Nov 30, 2024
61113ff
Update IExtensionManager doc comments
CharliePoole Dec 1, 2024
97e76f9
Merge pull request #1520 from nunit/inheritdoc
CharliePoole Dec 1, 2024
3703993
Add tests to show that the .NET Core runner can load compatible exten…
CharliePoole Dec 1, 2024
9734086
Merge pull request #1521 from nunit/issue-1505
CharliePoole Dec 1, 2024
16128cd
Add more tests
CharliePoole Dec 2, 2024
037b828
Merge pull request #1519 from nunit/issue-1510
CharliePoole Dec 2, 2024
4330169
Add support for additional extension directories
CharliePoole Dec 7, 2024
2550a11
Changes from review and refactoring
CharliePoole Dec 9, 2024
a4ddc74
Revise API in order to avoid loading duplicate extensions
CharliePoole Dec 10, 2024
f88cf00
Refactoring and new tests
CharliePoole Dec 11, 2024
074d5f4
Changes from second review
CharliePoole Dec 13, 2024
eae095a
Merge pull request #1522 from nunit/issue-488
CharliePoole Dec 13, 2024
fde1ede
Use alpha label for dev builds
CharliePoole Dec 23, 2024
9f43d4e
Merge pull request #1552 from nunit/issue-1545
CharliePoole Dec 23, 2024
874f0ea
Use latest build of recipe
CharliePoole Dec 25, 2024
f75008d
Merge pull request #1554 from nunit/issue-1545b
CharliePoole Dec 25, 2024
9840d91
Update recipe
CharliePoole Dec 26, 2024
87c8021
Merge pull request #1555 from nunit/issue-1545c
CharliePoole Dec 26, 2024
1cf27a4
Update recipe to 1.3.0-alpha.6
CharliePoole Dec 26, 2024
f8489b1
Merge pull request #1557 from nunit/updt-recipe
CharliePoole Dec 26, 2024
e2ab6a8
Update recipe to version 1.3.0
CharliePoole Dec 27, 2024
e7d76b5
Merge pull request #1561 from nunit/updt-recipe
CharliePoole Dec 27, 2024
b133b4e
Use dependency model v8 for .net 8 agent
CharliePoole Dec 27, 2024
ed398bf
Merge pull request #1562 from nunit/issue-1324
CharliePoole Dec 27, 2024
a2f391e
Update to latest recipe; fix format of zip file
CharliePoole Jan 11, 2025
0d2aea3
Merge pull request #1599 from nunit/issue-1598
CharliePoole Jan 11, 2025
1c4d532
Drop agents for .NET 7.0 and .NET Core 3.1
CharliePoole Jan 18, 2025
04be095
Merge pull request #1603 from nunit/issue-1601
CharliePoole Jan 18, 2025
c1add16
fix determination of chocolatey
mazharenko Jan 29, 2025
060d480
Merge pull request #1616 from mazharenko/issue-1614
CharliePoole Jan 31, 2025
3c06abb
Fix error in use of --extensionDirectory
CharliePoole Feb 10, 2025
7db08cf
Merge pull request #1625 from nunit/issue-1613
CharliePoole Feb 10, 2025
1761d3e
Further work on 1613
CharliePoole Feb 14, 2025
a551b7d
Merge pull request #1626 from nunit/issue-1613
CharliePoole Feb 22, 2025
eeccd37
Eliminate default option provider and ignore missing extension under …
CharliePoole Feb 22, 2025
f9fd4a7
Allow enabling and disabling extensions
CharliePoole Feb 23, 2025
e9a52df
Merge pull request #1627 from nunit/issue-1570
CharliePoole Feb 27, 2025
cb576a8
Update recipe
CharliePoole Mar 11, 2025
8fed4f1
Merge pull request #1637 from nunit/updt-recipe
CharliePoole Mar 12, 2025
c5be118
WIP
CharliePoole Mar 12, 2025
33c3454
Update recipe and use teamcity listener 1.0.9
CharliePoole Mar 12, 2025
1670c74
Merge pull request #1638 from nunit/issue-1634
CharliePoole Mar 12, 2025
374a31a
Add tests of teamcity extension under .NET Core
CharliePoole Mar 12, 2025
271731b
Merge pull request #1640 from nunit/issue-1634b
CharliePoole Mar 12, 2025
cb0e620
Update recipe
CharliePoole Mar 12, 2025
2efb6e1
Merge pull request #1641 from nunit/updt-recipe
CharliePoole Mar 12, 2025
80c00c1
feat: Add .NET9 agent
mikkelbu Mar 12, 2025
d149dd7
Merge pull request #1642 from nunit/feat/add-net9-agent
CharliePoole Mar 12, 2025
39fd03e
Enable continued use of binaryformatter under .net 9.0 and add a pack…
CharliePoole Mar 13, 2025
b2eeb5b
Merge pull request #1643 from nunit/issue-1602b
CharliePoole Mar 13, 2025
143b430
Modify ITestEngineResult interface splitting StopRun into two methods
CharliePoole Mar 14, 2025
dddb3fb
Make TestPackage serializable as XML
CharliePoole Mar 14, 2025
70fa854
Eliminate ProgressMessage class
CharliePoole Mar 16, 2025
1bf6bec
Eliminate CommandMessage class
CharliePoole Mar 16, 2025
104e204
Eliminate ComandResultMessage class; re-enable tests
CharliePoole Mar 16, 2025
9cfc7b6
Refactor BinarySerializationProtocol
CharliePoole Mar 16, 2025
671710c
Remove dependency on BinaryFormatter
CharliePoole Mar 16, 2025
a08196a
Changes from code review
CharliePoole Mar 17, 2025
818e0a9
Simplify ReadXml and update test to proof settings are only added to …
manfred-brands Mar 18, 2025
e5144d5
Merge pull request #1647 from nunit/issue-1354
CharliePoole Mar 18, 2025
c36dbf9
Update teamcity extension to version 1.0.10
CharliePoole Apr 8, 2025
5622884
Merge pull request #1656 from nunit/issue-1654
CharliePoole Apr 8, 2025
890beb6
Update to recipe version 1.4.0-alpha.11
CharliePoole Apr 10, 2025
3f2b5b8
Merge pull request #1658 from nunit/updt-recipe
CharliePoole Apr 10, 2025
47363f0
Fix issue https://github.com/nunit/nunit-console/issues/1680
May 21, 2025
df5aa6c
Ensure path to exe is quoted when running dotnet agents
CharliePoole May 23, 2025
d36d52e
Merge pull request #1684 from nunit/issue-1401
CharliePoole May 23, 2025
812d1a7
Merge pull request #1681 from east1k/main
CharliePoole May 24, 2025
e4bd274
Ensure that latest extension version is selected if multiple versions…
CharliePoole May 27, 2025
fb9f9af
Merge pull request #1689 from nunit/issue-1678
CharliePoole May 27, 2025
a097bc2
Added manifest
sbe-schleupen May 30, 2025
54c98b6
Merge pull request #1693 from sbe-schleupen/main
CharliePoole Jun 8, 2025
e02e29f
Fix crashing error in UnmanagedExecutableTestRunner
CharliePoole Oct 16, 2025
fcfcab1
Add package test
CharliePoole Oct 16, 2025
11c875c
Merge pull request #1758 from nunit/issue-1757
CharliePoole Oct 17, 2025
284b6f5
Add unit tests of netcore3.1 driver
CharliePoole Oct 30, 2025
c64d6d7
Merge pull request #1764 from nunit/driver-tests
CharliePoole Oct 30, 2025
a6a7b00
Add .NET10 agent; Remove .NET6 agent
joergpichler Nov 18, 2025
ef4b3ea
Add package tests of .NET 10.0 agent
CharliePoole Nov 20, 2025
924d5b1
Merge pull request #1778 from nunit/issue-1777
CharliePoole Nov 20, 2025
185c9cc
Enhanced assembly resolution for windows and aspnetcore
CharliePoole Nov 24, 2025
641e72b
Revisions after review
CharliePoole Nov 25, 2025
bb555d4
Use OS.IsWindows in more places.
manfred-brands Nov 26, 2025
11fd780
Small cleanups
manfred-brands Nov 26, 2025
2eb79b6
Use dotnet for non-Windows and add 4th digit to runtime versions
manfred-brands Nov 26, 2025
3db130e
Cleanup package references to prevent NU1510 error
manfred-brands Nov 26, 2025
dbe2d5f
Fix build.
manfred-brands Nov 26, 2025
652621a
Fix broken unit and package tests
CharliePoole Nov 26, 2025
a653f61
Merge pull request #1781 from nunit/issue-1779
CharliePoole Nov 26, 2025
05cc42e
Ignore .addins files in XML format
CharliePoole Nov 27, 2025
7200e37
Merge pull request #1784 from nunit/issue-1761
CharliePoole Nov 27, 2025
e5329d9
Handle prerelease dotnet runtimes correctly
CharliePoole Nov 29, 2025
4a036cf
Merge pull request #1785 from nunit/issue-1779a
CharliePoole Nov 30, 2025
d7332a2
Prepare for release
CharliePoole Dec 6, 2025
6b31f05
Merge pull request #1790 from nunit/release-3.21.0
CharliePoole Dec 6, 2025
6572a7b
Eliminate use of our custom AssemblyLoadContext
CharliePoole Dec 12, 2025
e8abaea
Merge pull request #1799 from nunit/issue-1795
CharliePoole Dec 14, 2025
aa0fd11
Eliminate double-loading of assemblies
CharliePoole Dec 25, 2025
89c2f57
Change next release to 3.22.0
CharliePoole Dec 25, 2025
008f693
Merge pull request #1808 from nunit/issue-1807
CharliePoole Dec 25, 2025
3bfe696
Fix problems in assemlby loading
CharliePoole Dec 30, 2025
e8e01c2
Merge pull request #1809 from nunit/fix-loading
CharliePoole Dec 30, 2025
cc13b2a
Fix problems in loading
CharliePoole Jan 1, 2026
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
19 changes: 17 additions & 2 deletions .config/dotnet-tools.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,25 @@
"isRoot": true,
"tools": {
"cake.tool": {
"version": "2.0.0",
"version": "5.0.0",
"commands": [
"dotnet-cake"
]
],
"rollForward": false
},
"gitversion.tool": {
"version": "6.4.0",
"commands": [
"dotnet-gitversion"
],
"rollForward": false
},
"gitreleasemanager.tool": {
"version": "0.20.0",
"commands": [
"dotnet-gitreleasemanager"
],
"rollForward": false
}
}
}
82 changes: 82 additions & 0 deletions .github/workflows/NUnitConsoleAndEngine.CI.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
name: NUnitConsoleAndEngine.CI

on:
workflow_dispatch:
pull_request:
push:
branches-ignore:
- "azure-*"
paths-ignore:
- "*.txt"
- "*.md"

env:
DOTNET_NOLOGO: true # Disable the .NET logo
DOTNET_CLI_TELEMETRY_OPTOUT: true # Disable sending .NET CLI telemetry

jobs:
ContinuousIntegration:
name: Continuous Integration
runs-on: windows-latest

env:
MYGET_API_KEY: ${{ secrets.PUBLISH_MYGET_ORG }}
NUGET_API_KEY: ${{ secrets.PUBLISH_NUGET_ORG }}
CHOCO_API_KEY: ${{ secrets.PUBLISH_CHOCOLATEY_ORG }}
GITHUB_ACCESS_TOKEN: ${{ secrets.GH_ACCESS_CP }}

steps:
- name: ⤵️ Checkout Source
uses: actions/checkout@v4
with:
fetch-depth: 0

# Ensure all required runtimes are available
- name: 🛠️ Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: |
3.1.x
6.0.x
7.0.x
8.0.x
9.0.x
10.0.x

- name: 🔧 Install dotnet tools
run: dotnet tool restore

- name: 🍰 Run cake
env:
MYGET_API_KEY: ${{ secrets.PUBLISH_MYGET_ORG }}
NUGET_API_KEY: ${{ secrets.PUBLISH_NUGET_ORG }}
CHOCO_API_KEY: ${{ secrets.PUBLISH_CHOCOLATEY_ORG }}
GITHUB_ACCESS_TOKEN: ${{ secrets.GH_ACCESS_CP }}

# If you need to get more verbose logging, add the following to the dotnet-cake above: --verbosity=diagnostic
run: dotnet cake --target=ContinuousIntegration --configuration=Release

- name: 🪵 Upload build logs
if: always()
uses: actions/upload-artifact@v4
with:
name: NUnitConsoleLogs
# This path is defined in build-settings.cake
path: "build-results/*.binlog"
# if-no-files-found: error

- name: 🪵 Upload InternalTrace logs
if: always()
uses: actions/upload-artifact@v4
with:
name: InternalTraceLogs
# This path is defined in build-settings.cake
path: "*.log"
# if-no-files-found: error

- name: 💾 Upload test results
uses: actions/upload-artifact@v4
if: always()
with:
name: "Test Results"
path: test-results
33 changes: 33 additions & 0 deletions .github/workflows/PublishDraftRelease.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: Publish Draft Release on GitHub

on:
workflow_dispatch:
inputs:
packageVersion:
description: "Package version for release (must match an existing milestone)"
required: true
type: string

jobs:
draft-release:
runs-on: ubuntu-latest

steps:
- name: ⤵️ Checkout Source
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: 🛠️ Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.100

- name: 🛠️ Install dotnet tools
run: dotnet tool restore

- name: 🔨 Create Draft Release
env:
GITHUB_ACCESS_TOKEN: ${{ secrets.GH_ACCESS_CP }}

run: dotnet cake --target=CreateDraftRelease --packageVersion="${{ inputs.packageVersion }}"
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,9 @@ TestResult.xml
testCaseCollection.xml
deploy
lib
build-results
test-results
build-results/
package
images
MockAssemblyResult.xml
Expand Down
14 changes: 6 additions & 8 deletions GitVersion.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
next-version: 3.14.0
next-version: 3.22.0
mode: ContinuousDelivery
legacy-semver-padding: 5
build-metadata-padding: 5
commits-since-version-source-padding: 5
branches:
master:
tag: dev
main:
regex: ^version3$
label: alpha
release:
tag: pre
label: pre
pull-request:
tag: pr
label: pr
70 changes: 70 additions & 0 deletions KnownExtensions.cake
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
using System.Reflection;

// Static class holding information about known extensions.
public static class KnownExtensions
{
// Static Variables representing well-known Extensions with the latest tested version
public static ExtensionSpecifier NUnitV2Driver = new ExtensionSpecifier(
"NUnit.Extension.NUnitV2Driver", "nunit-extension-nunit-v2-driver", "3.9.0");
public static ExtensionSpecifier NUnitProjectLoader = new ExtensionSpecifier(
"NUnit.Extension.NUnitProjectLoader", "nunit-extension-nunit-project-loader", "3.8.0");
public static ExtensionSpecifier VSProjectLoader = new ExtensionSpecifier(
"NUnit.Extension.VSProjectLoader", "nunit-extension-vs-project-loader", "3.9.0");
public static ExtensionSpecifier NUnitV2ResultWriter = new ExtensionSpecifier(
"NUnit.Extension.NUnitV2ResultWriter", "nunit-extension-nunit-v2-result-writer", "3.8.0");
public static ExtensionSpecifier TeamCityEventListener = new ExtensionSpecifier(
"NUnit.Extension.TeamCityEventListener", "nunit-extension-teamcity-event-listener", "1.0.9");
public static ExtensionSpecifier Net462PluggableAgent = new ExtensionSpecifier(
"NUnit.Extension.Net462PluggableAgent", "nunit-extension-net462-pluggable-agent", "4.1.0-alpha.3");
public static ExtensionSpecifier Net80PluggableAgent = new ExtensionSpecifier(
"NUnit.Extension.Net80PluggableAgent", "nunit-extension-net80-pluggable-agent", "4.1.0-alpha.4");
public static ExtensionSpecifier Net90PluggableAgent = new ExtensionSpecifier(
"NUnit.Extension.Net90PluggableAgent", "nunit-extension-net90-pluggable-agent", "4.1.0-alpha.3");

private static FieldInfo[] ExtensionFields =>
typeof(KnownExtensions).GetFields(BindingFlags.Static | BindingFlags.Public).ToArray();

private static ExtensionSpecifier[] BundledAgents =>
[
Net462PluggableAgent,
Net80PluggableAgent,
Net90PluggableAgent
];

public static IEnumerable<PackageReference> BundledNuGetAgents =>
BundledAgents.Select(a => a.NuGetPackage);

public static IEnumerable<PackageReference> BundledChocolateyAgents =>
BundledAgents.Select(a => a.ChocoPackage);

public static IEnumerable<ExtensionSpecifier> AllExtensions =>
ExtensionFields.Select(f => (ExtensionSpecifier)f.GetValue("Value")).ToArray();

public static IEnumerable<ExtensionSpecifier> AllAgents =>
AllExtensions.Where(ex => ex.NuGetId.EndsWith("PluggableAgent"));
}

Task("InstallBundledAgents")
.Description("Installs just the agents we bundle with the GUI runner.")
.Does(() =>
{
foreach (var agent in KnownExtensions.BundledNuGetAgents)
agent.Install(BuildSettings.ProjectDirectory + BIN_DIR);
});

Task("InstallAllAgents")
.Description("Installs all known agents.")
.Does(() =>
{
foreach (var agent in KnownExtensions.AllAgents)
agent.NuGetPackage.Install(BuildSettings.ProjectDirectory + BIN_DIR);
});

Task("InstallAllExtensions")
.Description("Installs all known extensions, both agents and others.")
.Does(() =>
{
foreach (var extension in KnownExtensions.AllExtensions)
extension.NuGetPackage.Install(BuildSettings.ProjectDirectory + BIN_DIR);
});

11 changes: 11 additions & 0 deletions MixedTests.nunit
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<NUnitProject>
<Settings processModel="Default" domainUsage="Default" />
<Config name="Debug" appbase="bin/Debug">
<assembly path="testdata/net462/mock-assembly.dll" />
<assembly path="testdata/net6.0/mock-assembly.dll" />
</Config>
<Config name="Release" appbase="bin/Release">
<assembly path="testdata/net462/mock-assembly.dll" />
<assembly path="testdata/net6.0/mock-assembly.dll" />
</Config>
</NUnitProject>
Loading
Loading