@@ -13,8 +13,7 @@ mod add {
1313 let tmp = paths:: data_dir ( ) ;
1414 let repository = gitbutler_testsupport:: TestProject :: default ( ) ;
1515 let path = repository. path ( ) ;
16- gitbutler_testsupport:: set_test_data_dir ( tmp. path ( ) ) ;
17- let project = gitbutler_project:: add ( path, None , None ) . unwrap ( ) ;
16+ let project = gitbutler_project:: add_with_path ( tmp. path ( ) , path, None , None ) . unwrap ( ) ;
1817 assert_eq ! ( project. path, path) ;
1918 assert_eq ! (
2019 project. title,
@@ -30,8 +29,8 @@ mod add {
3029 fn non_bare_without_worktree ( ) {
3130 let tmp = paths:: data_dir ( ) ;
3231 let root = repo_path_at ( "non-bare-without-worktree" ) ;
33- gitbutler_testsupport :: set_test_data_dir ( tmp. path ( ) ) ;
34- let err = gitbutler_project :: add ( root . as_path ( ) , None , None ) . unwrap_err ( ) ;
32+ let err = gitbutler_project :: add_with_path ( tmp. path ( ) , root . as_path ( ) , None , None )
33+ . unwrap_err ( ) ;
3534 assert_eq ! (
3635 err. to_string( ) ,
3736 "Cannot add non-bare repositories without a workdir"
@@ -42,8 +41,8 @@ mod add {
4241 fn submodule ( ) {
4342 let tmp = paths:: data_dir ( ) ;
4443 let root = repo_path_at ( "with-submodule" ) . join ( "submodule" ) ;
45- gitbutler_testsupport :: set_test_data_dir ( tmp. path ( ) ) ;
46- let err = gitbutler_project :: add ( root . as_path ( ) , None , None ) . unwrap_err ( ) ;
44+ let err = gitbutler_project :: add_with_path ( tmp. path ( ) , root . as_path ( ) , None , None )
45+ . unwrap_err ( ) ;
4746 assert_eq ! (
4847 err. to_string( ) ,
4948 "A git-repository without a `.git` directory cannot currently be added"
@@ -54,11 +53,15 @@ mod add {
5453 fn missing ( ) {
5554 let data_dir = paths:: data_dir ( ) ;
5655 let tmp = tempfile:: tempdir ( ) . unwrap ( ) ;
57- gitbutler_testsupport:: set_test_data_dir ( data_dir. path ( ) ) ;
5856 assert_eq ! (
59- gitbutler_project:: add( tmp. path( ) . join( "missing" ) , None , None )
60- . unwrap_err( )
61- . to_string( ) ,
57+ gitbutler_project:: add_with_path(
58+ data_dir. path( ) ,
59+ & tmp. path( ) . join( "missing" ) ,
60+ None ,
61+ None
62+ )
63+ . unwrap_err( )
64+ . to_string( ) ,
6265 "path not found"
6366 ) ;
6467 }
@@ -69,9 +72,8 @@ mod add {
6972 let tmp = tempfile:: tempdir ( ) . unwrap ( ) ;
7073 let path = tmp. path ( ) ;
7174 std:: fs:: write ( path. join ( "file.txt" ) , "hello world" ) . unwrap ( ) ;
72- gitbutler_testsupport:: set_test_data_dir ( data_dir. path ( ) ) ;
7375 assert_eq ! (
74- gitbutler_project:: add ( path, None , None )
76+ gitbutler_project:: add_with_path ( data_dir . path ( ) , path, None , None )
7577 . unwrap_err( )
7678 . to_string( ) ,
7779 "must be a Git repository"
@@ -82,8 +84,8 @@ mod add {
8284 fn empty ( ) {
8385 let data_dir = paths:: data_dir ( ) ;
8486 let tmp = tempfile:: tempdir ( ) . unwrap ( ) ;
85- gitbutler_testsupport :: set_test_data_dir ( data_dir. path ( ) ) ;
86- let err = gitbutler_project :: add ( tmp . path ( ) , None , None ) . unwrap_err ( ) ;
87+ let err = gitbutler_project :: add_with_path ( data_dir. path ( ) , tmp . path ( ) , None , None )
88+ . unwrap_err ( ) ;
8789 assert_eq ! ( err. to_string( ) , "must be a Git repository" ) ;
8890 }
8991
@@ -92,10 +94,9 @@ mod add {
9294 let data_dir = paths:: data_dir ( ) ;
9395 let repository = gitbutler_testsupport:: TestProject :: default ( ) ;
9496 let path = repository. path ( ) ;
95- gitbutler_testsupport:: set_test_data_dir ( data_dir. path ( ) ) ;
96- gitbutler_project:: add ( path, None , None ) . unwrap ( ) ;
97+ gitbutler_project:: add_with_path ( data_dir. path ( ) , path, None , None ) . unwrap ( ) ;
9798 assert_eq ! (
98- gitbutler_project:: add ( path, None , None )
99+ gitbutler_project:: add_with_path ( data_dir . path ( ) , path, None , None )
99100 . unwrap_err( )
100101 . to_string( ) ,
101102 "project already exists"
@@ -111,8 +112,9 @@ mod add {
111112 let repo = git2:: Repository :: init_bare ( & repo_dir) . unwrap ( ) ;
112113 create_initial_commit ( & repo) ;
113114
114- gitbutler_testsupport:: set_test_data_dir ( data_dir. path ( ) ) ;
115- let err = gitbutler_project:: add ( repo_dir. as_path ( ) , None , None ) . unwrap_err ( ) ;
115+ let err =
116+ gitbutler_project:: add_with_path ( data_dir. path ( ) , repo_dir. as_path ( ) , None , None )
117+ . unwrap_err ( ) ;
116118 assert_eq ! ( err. to_string( ) , "bare repositories are unsupported" ) ;
117119 }
118120
@@ -127,8 +129,9 @@ mod add {
127129 create_initial_commit ( & repo) ;
128130
129131 let worktree = repo. worktree ( "feature" , & worktree_dir, None ) . unwrap ( ) ;
130- gitbutler_testsupport:: set_test_data_dir ( data_dir. path ( ) ) ;
131- let err = gitbutler_project:: add ( worktree. path ( ) , None , None ) . unwrap_err ( ) ;
132+ let err =
133+ gitbutler_project:: add_with_path ( data_dir. path ( ) , worktree. path ( ) , None , None )
134+ . unwrap_err ( ) ;
132135 assert_eq ! ( err. to_string( ) , "can only work in main worktrees" ) ;
133136 }
134137
@@ -164,13 +167,12 @@ mod delete {
164167 #[ test]
165168 fn success ( ) {
166169 let data_dir = paths:: data_dir ( ) ;
167- gitbutler_testsupport:: set_test_data_dir ( & data_dir) ;
168170 let repository = gitbutler_testsupport:: TestProject :: default ( ) ;
169171 let path = repository. path ( ) ;
170- let project = gitbutler_project:: add ( path, None , None ) . unwrap ( ) ;
171- assert ! ( gitbutler_project:: delete ( project. id) . is_ok( ) ) ;
172- assert ! ( gitbutler_project:: delete ( project. id) . is_ok( ) ) ; // idempotent
173- assert ! ( gitbutler_project:: get ( project. id) . is_err( ) ) ;
172+ let project = gitbutler_project:: add_with_path ( data_dir . path ( ) , path, None , None ) . unwrap ( ) ;
173+ assert ! ( gitbutler_project:: delete_with_path ( data_dir . path ( ) , project. id) . is_ok( ) ) ;
174+ assert ! ( gitbutler_project:: delete_with_path ( data_dir . path ( ) , project. id) . is_ok( ) ) ; // idempotent
175+ assert ! ( gitbutler_project:: get_with_path ( data_dir . path ( ) , project. id) . is_err( ) ) ;
174176 assert ! ( !project. gb_dir( ) . exists( ) ) ;
175177 }
176178}
0 commit comments