@@ -139,17 +139,25 @@ mod tests {
139139
140140 struct HomeGuard {
141141 old_home : Option < String > ,
142+ old_test_home : Option < String > ,
143+ old_userprofile : Option < String > ,
142144 old_coven_home : Option < String > ,
143145 }
144146
145147 impl HomeGuard {
146148 fn set ( home : & Path , coven_home : & Path ) -> Self {
147149 let old_home = std:: env:: var ( "HOME" ) . ok ( ) ;
150+ let old_test_home = std:: env:: var ( "COVEN_CODE_TEST_HOME" ) . ok ( ) ;
151+ let old_userprofile = std:: env:: var ( "USERPROFILE" ) . ok ( ) ;
148152 let old_coven_home = std:: env:: var ( "COVEN_HOME" ) . ok ( ) ;
149153 std:: env:: set_var ( "HOME" , home) ;
154+ std:: env:: set_var ( "COVEN_CODE_TEST_HOME" , home) ;
155+ std:: env:: set_var ( "USERPROFILE" , home) ;
150156 std:: env:: set_var ( "COVEN_HOME" , coven_home) ;
151157 Self {
152158 old_home,
159+ old_test_home,
160+ old_userprofile,
153161 old_coven_home,
154162 }
155163 }
@@ -161,6 +169,14 @@ mod tests {
161169 Some ( value) => std:: env:: set_var ( "HOME" , value) ,
162170 None => std:: env:: remove_var ( "HOME" ) ,
163171 }
172+ match & self . old_test_home {
173+ Some ( value) => std:: env:: set_var ( "COVEN_CODE_TEST_HOME" , value) ,
174+ None => std:: env:: remove_var ( "COVEN_CODE_TEST_HOME" ) ,
175+ }
176+ match & self . old_userprofile {
177+ Some ( value) => std:: env:: set_var ( "USERPROFILE" , value) ,
178+ None => std:: env:: remove_var ( "USERPROFILE" ) ,
179+ }
164180 match & self . old_coven_home {
165181 Some ( value) => std:: env:: set_var ( "COVEN_HOME" , value) ,
166182 None => std:: env:: remove_var ( "COVEN_HOME" ) ,
@@ -204,12 +220,12 @@ mod tests {
204220 let home = temp. path ( ) . join ( "home" ) ;
205221 let coven_home = temp. path ( ) . join ( "coven" ) ;
206222 let project = temp. path ( ) . join ( "project" ) ;
207- let global_agents = home. join ( ".coven-code" ) . join ( "agents" ) ;
208223 let project_agents = project. join ( ".coven-code" ) . join ( "agents" ) ;
209- std:: fs:: create_dir_all ( & global_agents) . expect ( "global agents dir" ) ;
210224 std:: fs:: create_dir_all ( & project_agents) . expect ( "project agents dir" ) ;
211225 std:: fs:: create_dir_all ( & coven_home) . expect ( "coven home" ) ;
212226 let _guard = HomeGuard :: set ( & home, & coven_home) ;
227+ let global_agents = Settings :: config_dir ( ) . join ( "agents" ) ;
228+ std:: fs:: create_dir_all ( & global_agents) . expect ( "global agents dir" ) ;
213229
214230 std:: fs:: write ( global_agents. join ( "global.md" ) , "global" ) . expect ( "global agent" ) ;
215231 std:: fs:: write ( global_agents. join ( "README.txt" ) , "keep" ) . expect ( "global keep" ) ;
0 commit comments