Skip to content

Commit 5a45639

Browse files
committed
Everything passes but list isn't sorted
1 parent 5e6a111 commit 5a45639

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

src/cli.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,15 @@ struct Cli {
2323
command: Commands,
2424
#[clap(short, long, default_value = "skidmarks.ron")]
2525
database_url: String,
26-
#[clap(short, long, default_value = None)]
27-
sort_by: Option<String>,
2826
}
2927

3028
#[derive(Debug, Subcommand)]
3129
enum Commands {
3230
#[command(about = "List all streaks", long_about = None, short_flag = 'l')]
33-
List,
31+
List {
32+
#[clap(short, long)]
33+
sort_by: Option<String>,
34+
},
3435
#[command(about = "Create a new streak", long_about = None, short_flag = 'a')]
3536
Add {
3637
#[clap(short, long, value_enum)]
@@ -200,9 +201,8 @@ pub enum SortByDirection {
200201
Descending,
201202
}
202203

203-
pub fn get_sort_order() -> Option<(SortByField, SortByDirection)> {
204-
let cli = Cli::parse();
205-
let (sort_field, sort_direction) = match &cli.sort_by {
204+
pub fn get_sort_order(sort_by: Option<String>) -> Option<(SortByField, SortByDirection)> {
205+
let (sort_field, sort_direction) = match &sort_by {
206206
Some(sort) => {
207207
let direction = match sort.chars().next().unwrap() {
208208
'+' => SortByDirection::Ascending,
@@ -252,8 +252,8 @@ pub fn parse() {
252252
println!("{tada} {response} {}", streak.task);
253253
}
254254
},
255-
Commands::List => {
256-
let streak_list = get_all(db, get_sort_order());
255+
Commands::List { sort_by } => {
256+
let streak_list = get_all(db, get_sort_order(sort_by.clone()));
257257
println!("{}", build_table(streak_list));
258258
}
259259
Commands::Get { ident } => {
@@ -360,9 +360,9 @@ mod tests {
360360
temp.path().display(),
361361
"test-sort-order.ron"
362362
))
363-
.arg("list")
364363
.arg("--sort-by")
365364
.arg("+name")
365+
.arg("list")
366366
.assert();
367367
list_assert.success();
368368
}

0 commit comments

Comments
 (0)