File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -1590,15 +1590,16 @@ def _setup_equation_file(self):
15901590 if self .output_directory is not None :
15911591 assert self .output_directory_ == self .output_directory
15921592 else :
1593- self .output_directory_ = (
1594- tempfile .mkdtemp ()
1595- if self .temp_equation_file
1596- else (
1593+ if self .temp_equation_file :
1594+ if self .tempdir is not None :
1595+ Path (self .tempdir ).mkdir (parents = True , exist_ok = True )
1596+ self .output_directory_ = tempfile .mkdtemp (dir = self .tempdir )
1597+ else :
1598+ self .output_directory_ = (
15971599 "outputs"
15981600 if self .output_directory is None
15991601 else self .output_directory
16001602 )
1601- )
16021603 self .run_id_ = (
16031604 cast (str , SymbolicRegression .SearchUtilsModule .generate_run_id ())
16041605 if self .run_id is None
Original file line number Diff line number Diff line change @@ -77,6 +77,13 @@ def setUp(self):
7777 self .rstate = np .random .RandomState (0 )
7878 self .X = self .rstate .randn (100 , 5 )
7979
80+ def test_temp_equation_file_respects_tempdir (self ):
81+ with tempfile .TemporaryDirectory () as d :
82+ tempdir = Path (d ) / "pysr-temp"
83+ model = PySRRegressor (temp_equation_file = True , tempdir = str (tempdir ), run_id = "t" )
84+ model ._setup_equation_file ()
85+ self .assertEqual (Path (model .output_directory_ ).parent , tempdir )
86+
8087 def test_linear_relation (self ):
8188 y = self .X [:, 0 ]
8289 model = PySRRegressor (
You can’t perform that action at this time.
0 commit comments