Skip to main content

browser_paths/
lib.rs

1mod browser_name;
2mod browser_path;
3
4use std::path::PathBuf;
5
6pub use browser_name::{BrowserChannel, BrowserKind, BrowserName, Platform};
7pub use browser_path::{
8    get_any_browser_latest, get_any_browser_stable, get_browser_beta_path, get_browser_canary_path,
9    get_browser_dev_path, get_browser_path,
10};
11
12pub fn get_any_chrome_latest() -> Option<PathBuf> {
13    get_any_browser_latest(BrowserKind::Chrome)
14}
15
16pub fn get_any_chrome_stable() -> Option<PathBuf> {
17    get_any_browser_stable(BrowserKind::Chrome)
18}
19
20pub fn get_chrome_dev_path() -> Option<PathBuf> {
21    get_browser_dev_path(BrowserKind::Chrome)
22}
23
24pub fn get_chrome_beta_path() -> Option<PathBuf> {
25    get_browser_beta_path(BrowserKind::Chrome)
26}
27
28pub fn get_chrome_canary_path() -> Option<PathBuf> {
29    get_browser_canary_path(BrowserKind::Chrome)
30}
31
32pub fn get_chrome_path() -> Option<PathBuf> {
33    get_browser_path(BrowserKind::Chrome)
34}
35
36pub fn get_any_edge_latest() -> Option<PathBuf> {
37    get_any_browser_latest(BrowserKind::Edge)
38}
39
40pub fn get_any_edge_stable() -> Option<PathBuf> {
41    get_any_browser_stable(BrowserKind::Edge)
42}
43
44pub fn get_edge_dev_path() -> Option<PathBuf> {
45    get_browser_dev_path(BrowserKind::Edge)
46}
47
48pub fn get_edge_beta_path() -> Option<PathBuf> {
49    get_browser_beta_path(BrowserKind::Edge)
50}
51
52pub fn get_edge_canary_path() -> Option<PathBuf> {
53    get_browser_canary_path(BrowserKind::Edge)
54}
55
56pub fn get_edge_path() -> Option<PathBuf> {
57    get_browser_path(BrowserKind::Edge)
58}
59
60mod tests {
61    #[test]
62    fn test_get_chrome_dev_path() {
63        let path = super::get_chrome_dev_path();
64        assert!(path.is_some());
65        assert!(path.unwrap().exists());
66    }
67
68    #[test]
69    #[cfg(any(target_os = "macos", target_os = "windows"))]
70    fn test_get_chrome_beta_path() {
71        let path = super::get_chrome_beta_path();
72        assert!(path.is_some());
73        assert!(path.unwrap().exists());
74    }
75
76    #[test]
77    fn test_get_chrome_canary_path() {
78        let path = super::get_chrome_canary_path();
79        assert!(path.is_some());
80        assert!(path.unwrap().exists());
81    }
82
83    #[test]
84    fn test_get_chrome_stable_path() {
85        let path = super::get_chrome_path();
86        assert!(path.is_some());
87        assert!(path.unwrap().exists());
88    }
89
90    #[test]
91    fn test_get_edge_dev_path() {
92        let path = super::get_edge_dev_path();
93        assert!(path.is_some());
94        assert!(path.unwrap().exists());
95    }
96
97    #[test]
98    fn test_get_edge_beta_path() {
99        let path = super::get_edge_beta_path();
100        assert!(path.is_some());
101        assert!(path.unwrap().exists());
102    }
103
104    #[test]
105    #[cfg(target_os = "macos")]
106    fn test_get_edge_canary_path() {
107        let path = super::get_edge_canary_path();
108        assert!(path.is_some());
109        assert!(path.unwrap().exists());
110    }
111
112    #[test]
113    fn test_get_edge_stable_path() {
114        let path = super::get_edge_path();
115        assert!(path.is_some());
116        assert!(path.unwrap().exists());
117    }
118}