JvmBridge.Testing
26.10.23.4023
dotnet add package JvmBridge.Testing --version 26.10.23.4023
NuGet\Install-Package JvmBridge.Testing -Version 26.10.23.4023
<PackageReference Include="JvmBridge.Testing" Version="26.10.23.4023" />
<PackageVersion Include="JvmBridge.Testing" Version="26.10.23.4023" />
<PackageReference Include="JvmBridge.Testing" />
paket add JvmBridge.Testing --version 26.10.23.4023
#r "nuget: JvmBridge.Testing, 26.10.23.4023"
#:package JvmBridge.Testing@26.10.23.4023
#addin nuget:?package=JvmBridge.Testing&version=26.10.23.4023
#tool nuget:?package=JvmBridge.Testing&version=26.10.23.4023
JvmBridge.Testing
Test helpers for JvmBridge agents, for xUnit v3.
[JdkData(8)]supplies aJdkfor each requested Java major. The JDK is the checksum-pinned archive from JvmBridge's own inventory, downloaded once and cached; setJVMBRIDGE_JDK_<major>(orJVMBRIDGE_JDK_<major>_HOTSPOT,JVMBRIDGE_JDK_<major>_OPENJ9) to use an installed one. An installed JDK must be the Java version and implementation the test asks for, which it is asked once per run; otherwise, or when the directory does not exist, the test fails and says what it found. A major with no pinned JDK for the platform skips the test with the reason. Java 6 and 7 are pinned Zulu builds for linux-x64 and win-x64, and Java 7 also for win-x86 and osx-x64;CompileAsync(sources, release: 6)needs a JDK from 6 to 11, andrelease: 7one from 7 to 19.jdk.CompileAsync("Fixtures/**/*.java")compiles Java sources with the JDK and returns the class path.jdk.RunAsync("pkg.Main", classPath, agent: PublishedAgent.Find("MyAgent"))runs a class, optionally with the agent, and returns the exit code and combined output.PublishedAgent.Find(name)finds a published agent for the current runtime identifier inartifacts/agent/<rid>(orJVMBRIDGE_AGENT_DIRECTORY) and skips the test when it has not been published.ClassFileAssert.MatchesSnapshot(bytes, "Snapshots/run.txt", method: "run")compares thejavap -c-style disassembly of a class or method with a stored snapshot, so a patch's effect on the bytecode is reviewed in a diff. A relative path is resolved against the test project's directory. A mismatch writes<snapshot>.receivednext to it (add*.receivedto.gitignore), andJVMBRIDGE_UPDATE_SNAPSHOTS=1accepts what a run produced.ClassFileAssert.CallsandDoesNotCallassert on patched class bytes without a JVM. Pass adescriptorto match the whole member reference, not only the owner and name.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- JvmBridge (>= 26.10.23.4023)
- xunit.v3.assert (>= 4.0.2)
- xunit.v3.extensibility.core (>= 4.0.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 26.10.23.4023 | 6 | 10/23/2026 |
| 26.10.23.3501 | 34 | 10/23/2026 |
| 26.10.23.2995 | 39 | 10/23/2026 |
| 26.10.23.2515 | 40 | 10/23/2026 |
| 26.10.23.2374 | 45 | 10/23/2026 |
| 26.10.22.7463 | 98 | 10/22/2026 |
| 26.10.22.5110 | 50 | 10/22/2026 |
| 26.10.22.4562 | 49 | 10/22/2026 |
| 26.10.22.4199 | 50 | 10/22/2026 |
| 26.10.22.3403 | 41 | 10/22/2026 |
| 26.10.22.3284 | 41 | 10/22/2026 |
| 26.10.22.2987 | 42 | 10/22/2026 |
| 26.10.22.2593 | 47 | 10/22/2026 |
| 26.10.22.2272 | 61 | 10/22/2026 |
- feat(samples): ✨ used an invoker, conditions and target checks in the legacy agent (8cdc466)
- feat(testing): ✨ pinned Maven artifacts, patched whole jars and link-checked helpers (4b7219c)
- feat(patching): ✨ checked that helpers declare what patches call in them (b38d61f)
- feat(patching): ✨ applied patches on conditions over a method's code (e8beff2)
- feat(patching): ✨ added getters, setters and invokers for private members (8a0ab3c)