Skip to main content

faker_rust/default/
computer.rs

1//! Computer generator - generates random computer-related data
2
3use crate::base::sample;
4use crate::locale::fetch_locale;
5
6/// Generate a random computer type
7pub fn type_name() -> String {
8    fetch_locale("computer.type", "en")
9        .map(|v| sample(&v))
10        .unwrap_or_else(|| "Laptop".to_string())
11}
12
13/// Generate a random computer platform
14pub fn platform() -> String {
15    fetch_locale("computer.platform", "en")
16        .map(|v| sample(&v))
17        .unwrap_or_else(|| "Linux".to_string())
18}
19
20/// Generate a random linux processor
21pub fn linux_processor() -> String {
22    fetch_locale("computer.linux_processor", "en")
23        .map(|v| sample(&v))
24        .unwrap_or_else(|| "x86_64".to_string())
25}
26
27/// Generate a random operating system
28pub fn os() -> String {
29    fetch_locale("computer.os", "en")
30        .map(|v| sample(&v))
31        .unwrap_or_else(|| "Ubuntu".to_string())
32}
33
34#[cfg(test)]
35mod tests {
36    use super::*;
37
38    #[test]
39    fn test_type_name() {
40        let t = type_name();
41        assert!(!t.is_empty());
42    }
43}