You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It would be great if system-lambda would also provide a facility to change the current working directory.
As far as I am aware, this requires two things at the same time:
a) setting the System property user.dir.
b) Making a native call to chdir() or fchdir()
The JRuby folks seem to have done something like this.
CAVEAT: The working directory is a process attribute, not a thread attribute. Changing it may have undesired results when running tests in parallel should these tests directly or indirectly rely on the current working directory in any way.
Hi Christian, thank you for this nice idea for a feature. I cannot promise anything because System Lambda is a free-time project of mine and my time is currently very limited. If you're using JUnit Lambda you can also talk to the team of @junit-pioneer whether they are interested in implementing this feature into their library.
I actually worked on a prototype of this, and it doesn't look good. Path.of() uses a defaultFileSystem which effectively cashes the result of System.getProperty("user.dir"), which means that at least for Path.of(), a withCwd() would work only once per ClassLoader. I have to dig deeper to see if ClassLoader isolation can help, and even then there are open questions.
A solution that would work only half of the times (works for new File(".") but not for Path.of("") would be confusing.
It would be great if system-lambda would also provide a facility to change the current working directory.
As far as I am aware, this requires two things at the same time:
a) setting the System property
user.dir
.b) Making a native call to
chdir()
orfchdir()
The JRuby folks seem to have done something like this.
See also: https://stackoverflow.com/a/8204584/3554264
CAVEAT: The working directory is a process attribute, not a thread attribute. Changing it may have undesired results when running tests in parallel should these tests directly or indirectly rely on the current working directory in any way.
I would expect code to work like this:
The text was updated successfully, but these errors were encountered: