Skip to content

Commit eb3d42e

Browse files
authored
Merge pull request #2968 from gitbutlerapp/Virtual-branch-4
move from lib+bin to bin, refactor tests into crate
2 parents 9e7c5c2 + 2b53662 commit eb3d42e

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+307
-360
lines changed

.cargo/config.toml

-2
This file was deleted.

gitbutler-app/Cargo.toml

-8
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,6 @@ edition = "2021"
55
rust-version = "1.57"
66
authors = ["GitButler <[email protected]>"]
77

8-
[lib]
9-
name = "gblib"
10-
path = "src/lib.rs"
11-
12-
[[bin]]
13-
name = "gitbutler-app"
14-
path = "src/bin.rs"
15-
168
[build-dependencies]
179
tauri-build = { version = "1.5", features = [] }
1810

gitbutler-app/src/app.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -148,13 +148,13 @@ impl App {
148148
Ok(head.name().unwrap().to_string())
149149
}
150150

151-
pub fn git_set_global_config(&self, key: &str, value: &str) -> Result<String> {
151+
pub fn git_set_global_config(key: &str, value: &str) -> Result<String> {
152152
let mut config = git2::Config::open_default()?;
153153
config.set_str(key, value)?;
154154
Ok(value.to_string())
155155
}
156156

157-
pub fn git_get_global_config(&self, key: &str) -> Result<Option<String>> {
157+
pub fn git_get_global_config(key: &str) -> Result<Option<String>> {
158158
let config = git2::Config::open_default()?;
159159
let value = config.get_string(key);
160160
match value {

gitbutler-app/src/commands.rs

+2-4
Original file line numberDiff line numberDiff line change
@@ -105,8 +105,7 @@ pub async fn git_set_global_config(
105105
key: &str,
106106
value: &str,
107107
) -> Result<String, Error> {
108-
let app = handle.state::<app::App>();
109-
let result = app.git_set_global_config(key, value)?;
108+
let result = app::App::git_set_global_config(key, value)?;
110109
Ok(result)
111110
}
112111

@@ -116,8 +115,7 @@ pub async fn git_get_global_config(
116115
handle: tauri::AppHandle,
117116
key: &str,
118117
) -> Result<Option<String>, Error> {
119-
let app = handle.state::<app::App>();
120-
let result = app.git_get_global_config(key)?;
118+
let result = app::App::git_get_global_config(key)?;
121119
Ok(result)
122120
}
123121

gitbutler-app/src/database.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -74,13 +74,13 @@ impl Database {
7474

7575
#[cfg(test)]
7676
mod tests {
77-
use crate::test_utils;
77+
use crate::tests;
7878

7979
use super::*;
8080

8181
#[test]
8282
fn smoke() {
83-
let data_dir = test_utils::temp_dir();
83+
let data_dir = tests::temp_dir();
8484
let db = Database::try_from(&data_dir).unwrap();
8585
db.transaction(|tx| {
8686
tx.execute("CREATE TABLE test (id INTEGER PRIMARY KEY)", [])

gitbutler-app/src/deltas/database.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -138,13 +138,13 @@ fn insert_stmt<'conn>(
138138

139139
#[cfg(test)]
140140
mod tests {
141-
use crate::test_utils;
141+
use crate::tests;
142142

143143
use super::*;
144144

145145
#[test]
146146
fn insert_query() -> Result<()> {
147-
let db = test_utils::test_database();
147+
let db = tests::test_database();
148148
let database = Database::new(db);
149149

150150
let project_id = ProjectId::generate();
@@ -170,7 +170,7 @@ mod tests {
170170

171171
#[test]
172172
fn insert_update() -> Result<()> {
173-
let db = test_utils::test_database();
173+
let db = tests::test_database();
174174
let database = Database::new(db);
175175

176176
let project_id = ProjectId::generate();
@@ -203,7 +203,7 @@ mod tests {
203203

204204
#[test]
205205
fn aggregate_deltas_by_file() -> Result<()> {
206-
let db = test_utils::test_database();
206+
let db = tests::test_database();
207207
let database = Database::new(db);
208208

209209
let project_id = ProjectId::generate();

gitbutler-app/src/deltas/writer.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ mod tests {
7777

7878
use crate::{
7979
deltas, sessions,
80-
test_utils::{Case, Suite},
80+
tests::{Case, Suite},
8181
};
8282

8383
use super::*;

gitbutler-app/src/error.rs

+3-6
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,8 @@ pub mod gb {
6767
}
6868

6969
#[inline]
70-
pub fn context(&self) -> Option<&Context> {
71-
Some(&self.context)
70+
pub fn context(&self) -> &Context {
71+
&self.context
7272
}
7373

7474
pub(crate) fn into_owned(self) -> (ErrorKind, Context) {
@@ -175,10 +175,7 @@ pub mod gb {
175175
let r = app_level_io();
176176
assert!(r.is_err());
177177
let e = r.unwrap_err();
178-
assert_eq!(
179-
e.context().unwrap().vars.get("foo"),
180-
Some(&"bar".to_string())
181-
);
178+
assert_eq!(e.context().vars.get("foo"), Some(&"bar".to_string()));
182179
assert!(e.source().is_none());
183180
assert!(e.to_string().starts_with("io.other-error:"));
184181
}

gitbutler-app/src/gb_repository/repository.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -969,7 +969,7 @@ mod test {
969969
use anyhow::Result;
970970
use pretty_assertions::assert_eq;
971971

972-
use crate::test_utils::{Case, Suite};
972+
use crate::tests::{Case, Suite};
973973

974974
#[test]
975975
fn test_alternates_file_being_set() -> Result<()> {

gitbutler-app/src/gb_repository/repository_tests.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ use crate::{
88
projects::{self, ProjectId},
99
reader,
1010
sessions::{self, SessionId},
11-
test_utils::{Case, Suite},
11+
tests::{Case, Suite},
1212
};
1313

1414
fn test_remote_repository() -> Result<git2::Repository> {

gitbutler-app/src/git/config.rs

+5-5
Original file line numberDiff line numberDiff line change
@@ -50,11 +50,11 @@ impl Config {
5050

5151
#[cfg(test)]
5252
mod tests {
53-
use crate::test_utils;
53+
use crate::tests;
5454

5555
#[test]
5656
pub fn test_set_str() {
57-
let repo = test_utils::test_repository();
57+
let repo = tests::test_repository();
5858
let mut config = repo.config().unwrap();
5959
config.set_str("test.key", "test.value").unwrap();
6060
assert_eq!(
@@ -65,22 +65,22 @@ mod tests {
6565

6666
#[test]
6767
pub fn test_set_bool() {
68-
let repo = test_utils::test_repository();
68+
let repo = tests::test_repository();
6969
let mut config = repo.config().unwrap();
7070
config.set_bool("test.key", true).unwrap();
7171
assert!(config.get_bool("test.key").unwrap().unwrap());
7272
}
7373

7474
#[test]
7575
pub fn test_get_string_none() {
76-
let repo = test_utils::test_repository();
76+
let repo = tests::test_repository();
7777
let config = repo.config().unwrap();
7878
assert_eq!(config.get_string("test.key").unwrap(), None);
7979
}
8080

8181
#[test]
8282
pub fn test_get_bool_none() {
83-
let repo = test_utils::test_repository();
83+
let repo = tests::test_repository();
8484
let config = repo.config().unwrap();
8585
assert_eq!(config.get_bool("test.key").unwrap(), None);
8686
}

gitbutler-app/src/git/credentials.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -417,7 +417,7 @@ impl Helper {
417417
mod tests {
418418
use super::*;
419419

420-
use crate::test_utils::{self, test_repository};
420+
use crate::tests::{self, test_repository};
421421

422422
#[derive(Default)]
423423
struct TestCase<'a> {
@@ -429,7 +429,7 @@ mod tests {
429429

430430
impl TestCase<'_> {
431431
fn run(&self) -> Vec<(String, Vec<Credential>)> {
432-
let local_app_data = test_utils::temp_dir();
432+
let local_app_data = tests::temp_dir();
433433

434434
let users = users::Controller::try_from(&local_app_data).unwrap();
435435
let user = users::User {

gitbutler-app/src/git/diff.rs

+6-6
Original file line numberDiff line numberDiff line change
@@ -331,13 +331,13 @@ pub fn reverse_hunk(hunk: &Hunk) -> Option<Hunk> {
331331

332332
#[cfg(test)]
333333
mod tests {
334-
use crate::test_utils;
334+
use crate::tests;
335335

336336
use super::*;
337337

338338
#[test]
339339
fn diff_simple_text() {
340-
let repository = test_utils::test_repository();
340+
let repository = tests::test_repository();
341341
std::fs::write(repository.workdir().unwrap().join("file"), "hello").unwrap();
342342

343343
let head_commit_id = repository.head().unwrap().peel_to_commit().unwrap().id();
@@ -360,7 +360,7 @@ mod tests {
360360

361361
#[test]
362362
fn diff_empty_file() {
363-
let repository = test_utils::test_repository();
363+
let repository = tests::test_repository();
364364
std::fs::write(repository.workdir().unwrap().join("first"), "").unwrap();
365365

366366
let head_commit_id = repository.head().unwrap().peel_to_commit().unwrap().id();
@@ -383,7 +383,7 @@ mod tests {
383383

384384
#[test]
385385
fn diff_multiple_empty_files() {
386-
let repository = test_utils::test_repository();
386+
let repository = tests::test_repository();
387387
std::fs::write(repository.workdir().unwrap().join("first"), "").unwrap();
388388
std::fs::write(repository.workdir().unwrap().join("second"), "").unwrap();
389389

@@ -419,7 +419,7 @@ mod tests {
419419

420420
#[test]
421421
fn diff_binary() {
422-
let repository = test_utils::test_repository();
422+
let repository = tests::test_repository();
423423
std::fs::write(
424424
repository.workdir().unwrap().join("image"),
425425
[
@@ -450,7 +450,7 @@ mod tests {
450450

451451
#[test]
452452
fn diff_some_lines_are_binary() {
453-
let repository = test_utils::test_repository();
453+
let repository = tests::test_repository();
454454
std::fs::write(
455455
repository.workdir().unwrap().join("file"),
456456
[

gitbutler-app/src/git/remote.rs

-4
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,6 @@ impl<'repo> Remote<'repo> {
2525
.map_err(Into::into)
2626
}
2727

28-
pub fn url_as_str(&self) -> Result<Option<&str>> {
29-
Ok(self.inner.url())
30-
}
31-
3228
pub fn push(
3329
&mut self,
3430
refspec: &[&str],

gitbutler-app/src/keys/controller.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ mod tests {
5959
#[cfg(target_family = "unix")]
6060
use std::os::unix::prelude::*;
6161

62-
use crate::test_utils::Suite;
62+
use crate::tests::Suite;
6363

6464
use super::*;
6565

gitbutler-app/src/keys/key.rs

-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ use ssh_key::{HashAlg, LineEnding, SshSig};
44

55
use rand::rngs::OsRng;
66
use serde::{Deserialize, Serialize};
7-
use ssh_key;
87

98
#[derive(Debug, Clone, Eq)]
109
pub struct PrivateKey(ssh_key::PrivateKey);

gitbutler-app/src/lib.rs

-44
This file was deleted.

gitbutler-app/src/lock.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ impl Inner {
5454
mod tests {
5555
use super::*;
5656

57-
use crate::test_utils::temp_dir;
57+
use crate::tests::temp_dir;
5858

5959
#[tokio::test]
6060
async fn test_lock_same_instance() {

0 commit comments

Comments
 (0)