Skip to content

Commit 4a34b82

Browse files
Add progress style name constants.
1 parent 8ef90ca commit 4a34b82

File tree

1 file changed

+25
-17
lines changed

1 file changed

+25
-17
lines changed

src/progress/style.rs

Lines changed: 25 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,20 @@ use indicatif::ProgressStyle;
44

55
use std::{borrow::Cow, env};
66

7+
const DEFAULT_PROGRESS_STYLE: &str = "default";
8+
9+
const SIMPLE_PROGRESS_STYLE: &str = "simple";
10+
711
const SIMPLE_PROGRESS_STYLE_TEMPLATE: &str =
812
"[{elapsed_precise}] Commands Done/Total: {pos:>2}/{len:2} {wide_bar} ETA {eta_precise}";
913

14+
const LIGHT_BG_PROGRESS_STYLE: &str = "light_bg";
15+
1016
const LIGHT_BG_PROGRESS_STYLE_TEMPLATE: &str =
1117
"{spinner:.blue.bold} [{elapsed_precise}] Commands Done/Total: {pos:>2}/{len:2} [{wide_bar:.blue.bold/red}] ETA {eta_precise}";
1218

19+
const DARK_BG_PROGRESS_STYLE: &str = "dark_bg";
20+
1321
const DARK_BG_PROGRESS_STYLE_TEMPLATE: &str =
1422
"{spinner:.cyan.bold} [{elapsed_precise}] Commands Done/Total: {pos:>2}/{len:2} [{wide_bar:.cyan.bold/blue}] ETA {eta_precise}";
1523

@@ -22,24 +30,24 @@ pub struct ProgressStyleInfo {
2230
}
2331

2432
pub fn choose_progress_style() -> anyhow::Result<ProgressStyleInfo> {
25-
let setting = env::var(PROGRESS_STYLE).map_or(Cow::from("default"), Cow::from);
33+
let setting = env::var(PROGRESS_STYLE).map_or(Cow::from(DEFAULT_PROGRESS_STYLE), Cow::from);
2634

27-
match setting.as_ref() {
28-
"simple" => Ok(ProgressStyleInfo {
29-
style_name: "simple",
35+
match &*setting {
36+
SIMPLE_PROGRESS_STYLE => Ok(ProgressStyleInfo {
37+
style_name: SIMPLE_PROGRESS_STYLE,
3038
progress_style: ProgressStyle::with_template(SIMPLE_PROGRESS_STYLE_TEMPLATE)
3139
.context("ProgressStyle::with_template error")?,
3240
enable_steady_tick: false,
3341
}),
34-
"light_bg" | "default" => Ok(ProgressStyleInfo {
35-
style_name: "light_bg",
42+
LIGHT_BG_PROGRESS_STYLE | DEFAULT_PROGRESS_STYLE => Ok(ProgressStyleInfo {
43+
style_name: LIGHT_BG_PROGRESS_STYLE,
3644
progress_style: ProgressStyle::with_template(LIGHT_BG_PROGRESS_STYLE_TEMPLATE)
3745
.context("ProgressStyle::with_template error")?
3846
.progress_chars("#>-"),
3947
enable_steady_tick: true,
4048
}),
41-
"dark_bg" => Ok(ProgressStyleInfo {
42-
style_name: "dark_bg",
49+
DARK_BG_PROGRESS_STYLE => Ok(ProgressStyleInfo {
50+
style_name: DARK_BG_PROGRESS_STYLE,
4351
progress_style: ProgressStyle::with_template(DARK_BG_PROGRESS_STYLE_TEMPLATE)
4452
.context("ProgressStyle::with_template error")?
4553
.progress_chars("#>-"),
@@ -78,35 +86,35 @@ mod test {
7886
let result = choose_progress_style();
7987
assert_eq!(result.is_err(), false);
8088
let result = result.unwrap();
81-
assert_eq!(result.style_name, "light_bg");
89+
assert_eq!(result.style_name, LIGHT_BG_PROGRESS_STYLE);
8290
assert_eq!(result.enable_steady_tick, true);
8391

84-
env::set_var(PROGRESS_STYLE, "default");
92+
env::set_var(PROGRESS_STYLE, DEFAULT_PROGRESS_STYLE);
8593
let result = choose_progress_style();
8694
assert_eq!(result.is_err(), false);
8795
let result = result.unwrap();
88-
assert_eq!(result.style_name, "light_bg");
96+
assert_eq!(result.style_name, LIGHT_BG_PROGRESS_STYLE);
8997
assert_eq!(result.enable_steady_tick, true);
9098

91-
env::set_var(PROGRESS_STYLE, "light_bg");
99+
env::set_var(PROGRESS_STYLE, LIGHT_BG_PROGRESS_STYLE);
92100
let result = choose_progress_style();
93101
assert_eq!(result.is_err(), false);
94102
let result = result.unwrap();
95-
assert_eq!(result.style_name, "light_bg");
103+
assert_eq!(result.style_name, LIGHT_BG_PROGRESS_STYLE);
96104
assert_eq!(result.enable_steady_tick, true);
97105

98-
env::set_var(PROGRESS_STYLE, "dark_bg");
106+
env::set_var(PROGRESS_STYLE, DARK_BG_PROGRESS_STYLE);
99107
let result = choose_progress_style();
100108
assert_eq!(result.is_err(), false);
101109
let result = result.unwrap();
102-
assert_eq!(result.style_name, "dark_bg");
110+
assert_eq!(result.style_name, DARK_BG_PROGRESS_STYLE);
103111
assert_eq!(result.enable_steady_tick, true);
104112

105-
env::set_var(PROGRESS_STYLE, "simple");
113+
env::set_var(PROGRESS_STYLE, SIMPLE_PROGRESS_STYLE);
106114
let result = choose_progress_style();
107115
assert_eq!(result.is_err(), false);
108116
let result = result.unwrap();
109-
assert_eq!(result.style_name, "simple");
117+
assert_eq!(result.style_name, SIMPLE_PROGRESS_STYLE);
110118
assert_eq!(result.enable_steady_tick, false);
111119

112120
env::set_var(PROGRESS_STYLE, "unknown");

0 commit comments

Comments
 (0)