summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJustin Wernick <justin@worthe-it.co.za>2023-04-07 11:50:57 +0200
committerJustin Wernick <justin@worthe-it.co.za>2023-04-07 11:50:57 +0200
commit108fef99d19ade71013dc25562e3c3c3e23347ef (patch)
treefd2082991d11fdbfe00c4345c0daec49e070c999 /src
parentd7ac6f915079c2385be902106f97b994f5f65bc5 (diff)
Failing test for setting description
Diffstat (limited to 'src')
-rw-r--r--src/git.rs6
-rw-r--r--src/lib.rs8
-rw-r--r--src/parser.rs2
3 files changed, 13 insertions, 3 deletions
diff --git a/src/git.rs b/src/git.rs
index 3e6ef98..1271712 100644
--- a/src/git.rs
+++ b/src/git.rs
@@ -65,7 +65,11 @@ fn is_valid_git_repo_path(path: &PathBuf) -> Result<bool, ShackleError> {
}
}
-pub fn init(repo_name: &str, group: &Option<String>) -> Result<GitInitResult, ShackleError> {
+pub fn init(
+ repo_name: &str,
+ group: &Option<String>,
+ description: &Option<String>,
+) -> Result<GitInitResult, ShackleError> {
fn init_group(repo_name: &str, group: &str) -> Result<GitInitResult, ShackleError> {
if !verify_user_is_in_group(group) {
return Err(ShackleError::InvalidGroup);
diff --git a/src/lib.rs b/src/lib.rs
index 4685e53..7d4d2df 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -26,8 +26,12 @@ pub fn run_command(user_input: String) -> Result<ControlFlow<(), ()>, ShackleErr
println!("{table}");
}
- Ok(ShackleCommand::GitInit(GitInitArgs { repo_name, group })) => {
- let init_result = git::init(&repo_name, &group)?;
+ Ok(ShackleCommand::GitInit(GitInitArgs {
+ repo_name,
+ group,
+ description,
+ })) => {
+ let init_result = git::init(&repo_name, &group, &description)?;
println!("Successfully created \"{}\"", init_result.path.display());
}
Ok(ShackleCommand::GitUploadPack(upload_pack_args)) => {
diff --git a/src/parser.rs b/src/parser.rs
index 88b32bb..5295483 100644
--- a/src/parser.rs
+++ b/src/parser.rs
@@ -22,6 +22,8 @@ pub enum ShackleCommand {
pub struct GitInitArgs {
#[arg(long)]
pub group: Option<String>,
+ #[arg(long)]
+ pub description: Option<String>,
pub repo_name: String,
}