@@ -49,18 +49,25 @@ const SET_PATH_FILE_CONTENT: &str = indoc! {r#"
49
49
pub enum AssetType {
50
50
Client ,
51
51
Node ,
52
+ NodeManager ,
52
53
Testnet ,
53
54
}
54
55
55
56
impl AssetType {
56
57
pub fn variants ( ) -> Vec < AssetType > {
57
- vec ! [ AssetType :: Client , AssetType :: Node , AssetType :: Testnet ]
58
+ vec ! [
59
+ AssetType :: Client ,
60
+ AssetType :: Node ,
61
+ AssetType :: NodeManager ,
62
+ AssetType :: Testnet ,
63
+ ]
58
64
}
59
65
60
66
pub fn get_release_type ( & self ) -> ReleaseType {
61
67
match self {
62
68
AssetType :: Client => ReleaseType :: Safe ,
63
69
AssetType :: Node => ReleaseType :: Safenode ,
70
+ AssetType :: NodeManager => ReleaseType :: SafenodeManager ,
64
71
AssetType :: Testnet => ReleaseType :: Testnet ,
65
72
}
66
73
}
@@ -71,6 +78,7 @@ impl std::fmt::Display for AssetType {
71
78
match * self {
72
79
AssetType :: Client => write ! ( f, "safe" ) ,
73
80
AssetType :: Node => write ! ( f, "safenode" ) ,
81
+ AssetType :: NodeManager => write ! ( f, "safenode-manager" ) ,
74
82
AssetType :: Testnet => write ! ( f, "testnet" ) ,
75
83
}
76
84
}
@@ -82,6 +90,8 @@ pub struct Settings {
82
90
pub safe_version : String ,
83
91
pub safenode_path : PathBuf ,
84
92
pub safenode_version : String ,
93
+ pub safenode_manager_path : PathBuf ,
94
+ pub safenode_manager_version : String ,
85
95
pub testnet_path : PathBuf ,
86
96
pub testnet_version : String ,
87
97
}
@@ -96,6 +106,8 @@ impl Settings {
96
106
safe_version : String :: new ( ) ,
97
107
safenode_path : PathBuf :: new ( ) ,
98
108
safenode_version : String :: new ( ) ,
109
+ safenode_manager_path : PathBuf :: new ( ) ,
110
+ safenode_manager_version : String :: new ( ) ,
99
111
testnet_path : PathBuf :: new ( ) ,
100
112
testnet_version : String :: new ( ) ,
101
113
} )
@@ -105,6 +117,8 @@ impl Settings {
105
117
safe_version : String :: new ( ) ,
106
118
safenode_path : PathBuf :: new ( ) ,
107
119
safenode_version : String :: new ( ) ,
120
+ safenode_manager_path : PathBuf :: new ( ) ,
121
+ safenode_manager_version : String :: new ( ) ,
108
122
testnet_path : PathBuf :: new ( ) ,
109
123
testnet_version : String :: new ( ) ,
110
124
}
@@ -116,6 +130,7 @@ impl Settings {
116
130
match asset_type {
117
131
AssetType :: Client => self . safe_version . clone ( ) ,
118
132
AssetType :: Node => self . safenode_version . clone ( ) ,
133
+ AssetType :: NodeManager => self . safenode_manager_version . clone ( ) ,
119
134
AssetType :: Testnet => self . testnet_version . clone ( ) ,
120
135
}
121
136
}
@@ -124,6 +139,7 @@ impl Settings {
124
139
match asset_type {
125
140
AssetType :: Client => !self . safe_version . is_empty ( ) ,
126
141
AssetType :: Node => !self . safenode_version . is_empty ( ) ,
142
+ AssetType :: NodeManager => !self . safenode_manager_version . is_empty ( ) ,
127
143
AssetType :: Testnet => !self . testnet_version . is_empty ( ) ,
128
144
}
129
145
}
@@ -132,6 +148,7 @@ impl Settings {
132
148
match asset_type {
133
149
AssetType :: Client => self . safe_path . clone ( ) ,
134
150
AssetType :: Node => self . safenode_path . clone ( ) ,
151
+ AssetType :: NodeManager => self . safenode_manager_path . clone ( ) ,
135
152
AssetType :: Testnet => self . testnet_path . clone ( ) ,
136
153
}
137
154
}
@@ -341,6 +358,7 @@ fn get_bin_name(asset_type: &AssetType) -> String {
341
358
let mut bin_name = match asset_type {
342
359
AssetType :: Client => "safe" . to_string ( ) ,
343
360
AssetType :: Node => "safenode" . to_string ( ) ,
361
+ AssetType :: NodeManager => "safenode-manager" . to_string ( ) ,
344
362
AssetType :: Testnet => "testnet" . to_string ( ) ,
345
363
} ;
346
364
if OS == "windows" {
@@ -374,9 +392,6 @@ mod test {
374
392
} ;
375
393
#[ cfg( unix) ]
376
394
use std:: os:: unix:: fs:: PermissionsExt ;
377
- #[ cfg( windows) ]
378
- use std:: path:: PathBuf ;
379
- #[ cfg( unix) ]
380
395
use std:: path:: { Path , PathBuf } ;
381
396
382
397
/// These may seem pointless, but they are useful for when the tests run on different
@@ -440,7 +455,7 @@ mod test {
440
455
mock_release_repo
441
456
. expect_download_release_from_s3 ( )
442
457
. with (
443
- eq ( & ReleaseType :: Safenode ) ,
458
+ eq ( & ReleaseType :: Safe ) ,
444
459
eq ( latest_version) ,
445
460
always ( ) , // Varies per platform
446
461
eq ( & ArchiveType :: TarGz ) ,
@@ -518,7 +533,7 @@ mod test {
518
533
mock_release_repo
519
534
. expect_download_release_from_s3 ( )
520
535
. with (
521
- eq ( & ReleaseType :: Safenode ) ,
536
+ eq ( & ReleaseType :: Safe ) ,
522
537
eq ( latest_version) ,
523
538
always ( ) , // Varies per platform
524
539
eq ( & ArchiveType :: TarGz ) ,
@@ -580,7 +595,7 @@ mod test {
580
595
mock_release_repo
581
596
. expect_download_release_from_s3 ( )
582
597
. with (
583
- eq ( & ReleaseType :: Safenode ) ,
598
+ eq ( & ReleaseType :: Safe ) ,
584
599
eq ( specific_version) ,
585
600
always ( ) , // Varies per platform
586
601
eq ( & ArchiveType :: TarGz ) ,
@@ -706,6 +721,8 @@ mod test {
706
721
safe_bin_file. write_binary ( b"fake safe code" ) ?;
707
722
let safenode_bin_file = tmp_data_path. child ( "safenode" ) ;
708
723
safenode_bin_file. write_binary ( b"fake safenode code" ) ?;
724
+ let safenode_manager_bin_file = tmp_data_path. child ( "safenode-manager" ) ;
725
+ safenode_manager_bin_file. write_binary ( b"fake safenode-manager code" ) ?;
709
726
let testnet_bin_file = tmp_data_path. child ( "testnet" ) ;
710
727
testnet_bin_file. write_binary ( b"fake testnet code" ) ?;
711
728
@@ -714,6 +731,8 @@ mod test {
714
731
safe_version : "v0.75.1" . to_string ( ) ,
715
732
safenode_path : safenode_bin_file. to_path_buf ( ) ,
716
733
safenode_version : "v0.75.2" . to_string ( ) ,
734
+ safenode_manager_path : safenode_manager_bin_file. to_path_buf ( ) ,
735
+ safenode_manager_version : "v0.1.8" . to_string ( ) ,
717
736
testnet_path : testnet_bin_file. to_path_buf ( ) ,
718
737
testnet_version : "v0.75.3" . to_string ( ) ,
719
738
} ;
@@ -726,6 +745,11 @@ mod test {
726
745
assert_eq ! ( settings. safe_version, "v0.75.1" ) ;
727
746
assert_eq ! ( settings. safenode_path, safenode_bin_file. to_path_buf( ) ) ;
728
747
assert_eq ! ( settings. safenode_version, "v0.75.2" ) ;
748
+ assert_eq ! (
749
+ settings. safenode_manager_path,
750
+ safenode_manager_bin_file. to_path_buf( )
751
+ ) ;
752
+ assert_eq ! ( settings. safenode_manager_version, "v0.1.8" ) ;
729
753
assert_eq ! ( settings. testnet_path, testnet_bin_file. to_path_buf( ) ) ;
730
754
assert_eq ! ( settings. testnet_version, "v0.75.3" ) ;
731
755
Ok ( ( ) )
@@ -744,6 +768,8 @@ mod test {
744
768
safe_bin_file. write_binary ( b"fake safe code" ) ?;
745
769
let safenode_bin_file = tmp_data_path. child ( "safenode" ) ;
746
770
safenode_bin_file. write_binary ( b"fake safenode code" ) ?;
771
+ let safenode_manager_bin_file = tmp_data_path. child ( "safenode-manager" ) ;
772
+ safenode_manager_bin_file. write_binary ( b"fake safenode-manager code" ) ?;
747
773
let testnet_bin_file = tmp_data_path. child ( "testnet" ) ;
748
774
testnet_bin_file. write_binary ( b"fake testnet code" ) ?;
749
775
@@ -752,6 +778,8 @@ mod test {
752
778
safe_version : "v0.75.1" . to_string ( ) ,
753
779
safenode_path : safenode_bin_file. to_path_buf ( ) ,
754
780
safenode_version : "v0.75.2" . to_string ( ) ,
781
+ safenode_manager_path : safenode_manager_bin_file. to_path_buf ( ) ,
782
+ safenode_manager_version : "v0.1.8" . to_string ( ) ,
755
783
testnet_path : testnet_bin_file. to_path_buf ( ) ,
756
784
testnet_version : "v0.75.3" . to_string ( ) ,
757
785
} ;
@@ -764,6 +792,11 @@ mod test {
764
792
assert_eq ! ( settings. safe_version, "v0.75.1" ) ;
765
793
assert_eq ! ( settings. safenode_path, safenode_bin_file. to_path_buf( ) ) ;
766
794
assert_eq ! ( settings. safenode_version, "v0.75.2" ) ;
795
+ assert_eq ! (
796
+ settings. safenode_manager_path,
797
+ safenode_manager_bin_file. to_path_buf( )
798
+ ) ;
799
+ assert_eq ! ( settings. safenode_manager_version, "v0.1.8" ) ;
767
800
assert_eq ! ( settings. testnet_path, testnet_bin_file. to_path_buf( ) ) ;
768
801
assert_eq ! ( settings. testnet_version, "v0.75.3" ) ;
769
802
Ok ( ( ) )
@@ -778,13 +811,12 @@ mod test {
778
811
{
779
812
"safe_path": "/home/chris/.local/safe",
780
813
"safe_version": "v0.75.1",
781
- "safe_is_elevated_install": false,
782
814
"safenode_path": "/home/chris/.local/bin/safenode",
783
815
"safenode_version": "v0.75.2",
784
- "safenode_is_elevated_install": false,
816
+ "safenode_manager_path": "/home/chris/.local/bin/safenode-manager",
817
+ "safenode_manager_version": "v0.1.8",
785
818
"testnet_path": "/home/chris/.local/bin/testnet",
786
- "testnet_version": "v0.75.3",
787
- "testnet_is_elevated_install": false
819
+ "testnet_version": "v0.75.3"
788
820
}
789
821
"# ,
790
822
) ?;
@@ -803,6 +835,11 @@ mod test {
803
835
assert_eq ! ( settings. safe_version, "v0.75.1" ) ;
804
836
assert_eq ! ( settings. safenode_path, safenode_bin_file. to_path_buf( ) ) ;
805
837
assert_eq ! ( settings. safenode_version, "v0.75.2" ) ;
838
+ assert_eq ! (
839
+ settings. safenode_manager_path,
840
+ PathBuf :: from( "/home/chris/.local/bin/safenode-manager" )
841
+ ) ;
842
+ assert_eq ! ( settings. safenode_manager_version, "v0.1.8" ) ;
806
843
assert_eq ! (
807
844
settings. testnet_path,
808
845
PathBuf :: from( "/home/chris/.local/bin/testnet" )
0 commit comments