Repository navigation
test: test_vcore_fs_open and test_vcore_video_acquire build again with env_on - #2380
Conversation
…h env_on NotRexed#2042 changed the switch reads in OpenFile (HOS_NO_MOVIES, through fs_trace) and in dec_acquire (HOS_VIDEO_NO_CATCHUP) from getenv() to env_on(). NotRexed#2301 and NotRexed#2322 added tests that cut those two functions out of host/nn_fs.c and host/nn_video.c. Each pull request was checked on its own base; on main the cut-out code calls env_on, which neither test's fixture had, and both tests stopped compiling (g++ and clang++). Each fixture now gets gpu/vk/compat/hookshot_env.h with -include, as NotRexed#2042 did for the other tests that cut code out of the sources. Assisted-by: Claude Opus 5.5 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Tested I reproduced the missing- |
|
Thanks @Arkex-ai, that is the Windows run I couldn't do here. MSVC is still untested, as you say. |
ghost
left a comment
There was a problem hiding this comment.
Looks good. #2301 and #2322 are both merged, and main (b744b1e) still has neither -include in these two tests, so the fix is needed on main as it stands.
The diff is just the ENV_ON_H constant and -include ENV_ON_H in the compile line of both tests, the same as #2042 gave the other tests that cut code out of the sources. Path is already imported before the constant. Nothing is weakened: no assertions, fixtures or sources changed, and Arkex-ai's Windows llvm-mingw run (plus the author's causal checks against the pre-fix sources) shows both tests still reject the old code. MSVC remains untested, as noted.
CI: the appimage failure is the runner not resolving archive.ubuntu.com (apt), unrelated to this change. The rest was still pending when I looked.
What this is for: main's game-free checks pass again. Since #2042 met #2301 and #2322 on main today,
tests/test_vcore_fs_open.pyandtests/test_vcore_video_acquire.pyno longer compile, sotests/run_all.pyfails on main (#1929). What is measured: the two tests with g++ and clang++ on this branch and on main without it, each test against the source from before the fix it guards, and the whole oftests/run_all.pyon Arch Linux. Not measured: the Windows runners (llvm-mingw clang++, MSVC).Problem
env_on()ingpu/vk/compat/hookshot_env.hthe rule for on/off switches. Among others it changed OpenFile'sHOS_NO_MOVIESread inhost/nn_fs.canddec_acquire'sHOS_VIDEO_NO_CATCHUPread inhost/nn_video.cfromgetenv()toenv_on(). It also gave every test that cuts code out of the sources the header, with-include.getenv. Neither pull request's head had fix: switches that behave as players expect, and dead ones removed #2042 in it, and only the title check ran on either of them. fix: switches that behave as players expect, and dead ones removed #2042's own run could not have caught it either: neither test existed yet.env_on, and neither fixture declares it:(g++:
error: 'env_on' was not declared in this scope, at the same lines.)What changed
tests/test_vcore_fs_open.py,tests/test_vcore_video_acquire.py:ENV_ON_Hand"-include", ENV_ON_Hin the compile command. These are the same two lines fix: switches that behave as players expect, and dead ones removed #2042 added to the other tests that cut code out of the sources (tests/test_multiwait_wake.py,tests/test_guest_copies.pyand others). Nothing else changed, and no source file.How it was tested
Arch Linux, kernel 7.2.15, g++ 16.2.1, clang++ 23.1.3, 2026-11-11. Branch head f7fb1d3 on main b744b1e.
ok.nn_fs.cof b75f2c1 (before fix(vcores): no core held while OpenFile builds the button prompts (#1929) #2301):FAIL: host_path (where a prompt file is built at its first open) runs without the core. Onnn_video.cof aab7daf (before fix(vcores): no core held while a movie picture is decoded (#1929) #2322):FAIL: the decoding runs without the coreand seven more.tests/test_vcore_escape.py(fix(vcores): an escaped thread takes a core again after its next block (#1929) #2302, now on main),tests/test_invalidate_vcore.pyandtests/test_multiwait_wake.py. So does fix(linux): don't try dma-buf imports on NVIDIA's driver #2340'stests/test_import_buffer_binding.py.tests/run_all.py, run on this commit before its rebase onto b744b1e (it was on f9286c4 then): 373 passed, 2 failed, 10 skipped. The two failures fail on this machine whatever the change:test_updater_asset_digest.py(only the .NET 10 SDK is installed here, and the fixture needs net8.0) andtest_wayland_libdecor_hint.py(clang 23's-Wunused-but-set-globalunder-Werror). After the rebase I rantest_vcore_fs_open.py,test_vcore_video_acquire.py,test_vcore_escape.pyandtest_invalidate_vcore.pyagain with both compilers.Not tested
-includeof this header is the same one fix: switches that behave as players expect, and dead ones removed #2042 gave the other tests.Risks
Fixes #2379.
Assisted-by: Claude Opus 5.5
Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com