faker_rust/default/
job.rs1use crate::base::sample;
4use crate::locale::fetch_locale;
5
6pub fn field() -> String {
8 fetch_locale("job.field", "en")
9 .map(|v| sample(&v))
10 .unwrap_or_else(|| "Technology".to_string())
11}
12
13pub fn seniority() -> String {
15 fetch_locale("job.seniority", "en")
16 .map(|v| sample(&v))
17 .unwrap_or_else(|| "Senior".to_string())
18}
19
20pub fn position() -> String {
22 fetch_locale("job.position", "en")
23 .map(|v| sample(&v))
24 .unwrap_or_else(|| "Manager".to_string())
25}
26
27pub fn title() -> String {
29 let config = crate::config::FakerConfig::current();
30 let choice = config.rand_usize(3);
31
32 match choice {
33 0 => format!("{} {}", seniority(), position()),
34 1 => format!("{} {}", position(), field()),
35 _ => format!("{} {}", seniority(), field()),
36 }
37}
38
39pub fn key_skill() -> String {
41 fetch_locale("job.key_skill", "en")
42 .map(|v| sample(&v))
43 .unwrap_or_else(|| "Communication".to_string())
44}