(browser_name: &str, driver_name: &str)
| 73 | |
| 74 | impl ManagerConfig { |
| 75 | pub fn default(browser_name: &str, driver_name: &str) -> ManagerConfig { |
| 76 | let cache_path = StringKey(vec![CACHE_PATH_KEY], &read_cache_path()).get_value(); |
| 77 | |
| 78 | let self_os = OS; |
| 79 | let self_arch = if WINDOWS.is(self_os) { |
| 80 | let mut _architecture = env::var(ENV_PROCESSOR_ARCHITECTURE).unwrap_or_default(); |
| 81 | #[cfg(windows)] |
| 82 | { |
| 83 | if _architecture.is_empty() { |
| 84 | _architecture = get_win_os_architecture(); |
| 85 | } |
| 86 | } |
| 87 | if _architecture.contains("32") { |
| 88 | ARCH_X86.to_string() |
| 89 | } else if _architecture.contains("ARM") { |
| 90 | ARCH_ARM64.to_string() |
| 91 | } else { |
| 92 | ARCH_X64.to_string() |
| 93 | } |
| 94 | } else { |
| 95 | let uname_a_command = Command::new(UNAME_COMMAND, vec![String::from("-a")]); |
| 96 | if run_shell_command(uname_a_command) |
| 97 | .unwrap_or_default() |
| 98 | .to_ascii_lowercase() |
| 99 | .contains(ARCH_ARM64) |
| 100 | { |
| 101 | ARCH_ARM64.to_string() |
| 102 | } else { |
| 103 | let uname_m_command = Command::new(UNAME_COMMAND, vec![String::from("-m")]); |
| 104 | run_shell_command(uname_m_command).unwrap_or_default() |
| 105 | } |
| 106 | }; |
| 107 | |
| 108 | let browser_version_label = concat(browser_name, VERSION_PREFIX); |
| 109 | let driver_version_label = concat(driver_name, VERSION_PREFIX); |
| 110 | let browser_path_label = concat(browser_name, PATH_PREFIX); |
| 111 | let driver_mirror_label = concat(driver_name, MIRROR_PREFIX); |
| 112 | let browser_mirror_label = concat(browser_name, MIRROR_PREFIX); |
| 113 | |
| 114 | ManagerConfig { |
| 115 | cache_path, |
| 116 | fallback_driver_from_cache: true, |
| 117 | browser_version: StringKey(vec!["browser-version", &browser_version_label], "") |
| 118 | .get_value(), |
| 119 | driver_version: StringKey(vec!["driver-version", &driver_version_label], "") |
| 120 | .get_value(), |
| 121 | browser_path: StringKey(vec!["browser-path", &browser_path_label], "").get_value(), |
| 122 | driver_mirror_url: StringKey(vec!["driver-mirror-url", &driver_mirror_label], "") |
| 123 | .get_value(), |
| 124 | browser_mirror_url: StringKey(vec!["browser-mirror-url", &browser_mirror_label], "") |
| 125 | .get_value(), |
| 126 | os: StringKey(vec!["os"], self_os).get_value(), |
| 127 | arch: StringKey(vec!["arch"], self_arch.as_str()).get_value(), |
| 128 | proxy: StringKey(vec!["proxy"], "").get_value(), |
| 129 | timeout: IntegerKey("timeout", REQUEST_TIMEOUT_SEC).get_value(), |
| 130 | ttl: IntegerKey("ttl", TTL_SEC).get_value(), |
| 131 | offline: BooleanKey("offline", false).get_value(), |
| 132 | force_browser_download: BooleanKey("force-browser-download", false).get_value(), |
nothing calls this directly
no test coverage detected