Skip to content

Commit 6bc1391

Browse files
committed
Test json output & update serializers
1 parent fda2663 commit 6bc1391

15 files changed

+317
-2
lines changed

crates/but-worktrees/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ gitbutler-stack.workspace = true
2323
gitbutler-oxidize.workspace = true
2424
gitbutler-workspace.workspace = true
2525
gitbutler-branch-actions.workspace = true
26+
gitbutler-serde.workspace = true
2627
serde.workspace = true
2728
uuid.workspace = true
2829
bstr.workspace = true

crates/but-worktrees/src/lib.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ pub mod new;
1515

1616
/// A worktree name.
1717
#[derive(Debug, Clone, PartialEq, Eq, Hash, Serialize, Deserialize)]
18-
pub struct WorktreeId(BString);
18+
pub struct WorktreeId(#[serde(with = "gitbutler_serde::bstring_lossy")] BString);
1919

2020
impl WorktreeId {
2121
/// Create a new worktree ID using a random UUID.
@@ -79,7 +79,9 @@ pub struct Worktree {
7979
/// The canonicalized filesystem path to the worktree.
8080
pub path: PathBuf,
8181
/// The git reference this worktree was created from.
82+
#[serde(with = "gitbutler_serde::fullname_opt")]
8283
pub created_from_ref: Option<gix::refs::FullName>,
8384
/// The base which we will use in a cherry-pick.
85+
#[serde(with = "gitbutler_serde::object_id_opt")]
8486
pub base: Option<gix::ObjectId>,
8587
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"entries": [
3+
{
4+
"id": "list-test",
5+
"path": "[TEMP_PATH]/.git/gitbutler/worktrees/list-test",
6+
"createdFromRef": "refs/heads/A",
7+
"base": "9477ae721ab521d9d0174f70e804ce3ff9f6fb56"
8+
}
9+
]
10+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"created": {
3+
"id": "test",
4+
"path": "[TEMP_PATH]/.git/gitbutler/worktrees/test",
5+
"createdFromRef": "refs/heads/A",
6+
"base": "9477ae721ab521d9d0174f70e804ce3ff9f6fb56"
7+
},
8+
"branchName": "gitbutler/worktree/test",
9+
"baseCommitMessage": "add A/n"
10+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"created": {
3+
"id": "test-a",
4+
"path": "[TEMP_PATH]/.git/gitbutler/worktrees/test-a",
5+
"createdFromRef": "refs/heads/A",
6+
"base": "9477ae721ab521d9d0174f70e804ce3ff9f6fb56"
7+
},
8+
"branchName": "gitbutler/worktree/test-a",
9+
"baseCommitMessage": "add A/n"
10+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"created": {
3+
"id": "test-b",
4+
"path": "[TEMP_PATH]/.git/gitbutler/worktrees/test-b",
5+
"createdFromRef": "refs/heads/A",
6+
"base": "9477ae721ab521d9d0174f70e804ce3ff9f6fb56"
7+
},
8+
"branchName": "gitbutler/worktree/test-b",
9+
"baseCommitMessage": "add A/n"
10+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"created": {
3+
"id": "A-a",
4+
"path": "[TEMP_PATH]/.git/gitbutler/worktrees/A-a",
5+
"createdFromRef": "refs/heads/A",
6+
"base": "9477ae721ab521d9d0174f70e804ce3ff9f6fb56"
7+
},
8+
"branchName": "gitbutler/worktree/A-a",
9+
"baseCommitMessage": "add A/n"
10+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"created": {
3+
"id": "from-a",
4+
"path": "[TEMP_PATH]/.git/gitbutler/worktrees/from-a",
5+
"createdFromRef": "refs/heads/A",
6+
"base": "9477ae721ab521d9d0174f70e804ce3ff9f6fb56"
7+
},
8+
"branchName": "gitbutler/worktree/from-a",
9+
"baseCommitMessage": "add A/n"
10+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"created": {
3+
"id": "from-b",
4+
"path": "[TEMP_PATH]/.git/gitbutler/worktrees/from-b",
5+
"createdFromRef": "refs/heads/B",
6+
"base": "d3e2ba36c529fbdce8de90593e22aceae21f9b17"
7+
},
8+
"branchName": "gitbutler/worktree/from-b",
9+
"baseCommitMessage": "add B/n"
10+
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{
2+
"entries": [
3+
{
4+
"id": "from-a",
5+
"path": "[TEMP_PATH]/.git/gitbutler/worktrees/from-a",
6+
"createdFromRef": "refs/heads/A",
7+
"base": "9477ae721ab521d9d0174f70e804ce3ff9f6fb56"
8+
},
9+
{
10+
"id": "from-b",
11+
"path": "[TEMP_PATH]/.git/gitbutler/worktrees/from-b",
12+
"createdFromRef": "refs/heads/B",
13+
"base": "d3e2ba36c529fbdce8de90593e22aceae21f9b17"
14+
}
15+
]
16+
}

0 commit comments

Comments
 (0)