There was a big misunderstanding on my part -- in particular that a different server might be listening at the root, so the redirect built into context.ts will never happen. The existing test (as mentioned in the issue) passes, but only because no one else is listening, and fresh is able to perform the redirect.
I briefly considered writing a docker container to orchestrate this properly, but then I didn't want to have docker running in order to run these tests. (My laptop is old and bad.) So instead the two new tests very thoroughly assert that scripts included in the html are properly prefixed with the base path. And yes, they fail if the fix is reverted.
As for the fix itself: I just needed to prepend the asset URL with the base path.
closes https://github.com/denoland/fresh/issues/2326
There was a big misunderstanding on my part -- in particular that a different server might be listening at the root, so the redirect built into
context.ts
will never happen. The existing test (as mentioned in the issue) passes, but only because no one else is listening, and fresh is able to perform the redirect.I briefly considered writing a docker container to orchestrate this properly, but then I didn't want to have docker running in order to run these tests. (My laptop is old and bad.) So instead the two new tests very thoroughly assert that scripts included in the html are properly prefixed with the base path. And yes, they fail if the fix is reverted.
As for the fix itself: I just needed to prepend the asset URL with the base path.