File tree 1 file changed +64
-0
lines changed
rocketmq-common/src/utils
1 file changed +64
-0
lines changed Original file line number Diff line number Diff line change @@ -61,3 +61,67 @@ impl EnvUtils {
61
61
} )
62
62
}
63
63
}
64
+
65
+ #[ cfg( test) ]
66
+ mod tests {
67
+ use super :: * ;
68
+
69
+ #[ test]
70
+ fn test_get_property_existing_variable ( ) {
71
+ // Set up
72
+ let key = "HOME" ;
73
+ let expected_value = "/home/user" ;
74
+
75
+ std:: env:: set_var ( key, expected_value) ;
76
+
77
+ // Test
78
+ let result = EnvUtils :: get_property ( key) ;
79
+
80
+ // Assert
81
+ assert_eq ! ( result, Some ( expected_value. to_string( ) ) ) ;
82
+ }
83
+
84
+ #[ test]
85
+ fn test_get_property_non_existing_variable ( ) {
86
+ // Set up
87
+ let key = "NON_EXISTING_VARIABLE" ;
88
+
89
+ // Test
90
+ let result = EnvUtils :: get_property ( key) ;
91
+
92
+ // Assert
93
+ assert_eq ! ( result, None ) ;
94
+ }
95
+
96
+ #[ test]
97
+ fn test_get_rocketmq_home_existing_variable ( ) {
98
+ // Set up
99
+ let expected_value = "/path/to/rocketmq_home" ;
100
+
101
+ std:: env:: set_var ( ROCKETMQ_HOME_ENV , expected_value) ;
102
+
103
+ // Test
104
+ let result = EnvUtils :: get_rocketmq_home ( ) ;
105
+
106
+ // Assert
107
+ assert_eq ! ( result, expected_value. to_string( ) ) ;
108
+ }
109
+
110
+ #[ test]
111
+ fn test_get_rocketmq_home_non_existing_variable ( ) {
112
+ // Set up
113
+ std:: env:: remove_var ( ROCKETMQ_HOME_ENV ) ;
114
+
115
+ // Test
116
+ let result = EnvUtils :: get_rocketmq_home ( ) ;
117
+
118
+ // Assert
119
+ assert_eq ! (
120
+ result,
121
+ std:: env:: current_dir( )
122
+ . unwrap( )
123
+ . to_string_lossy( )
124
+ . to_string( )
125
+ ) ;
126
+ }
127
+ }
You can’t perform that action at this time.
0 commit comments