@@ -92,23 +92,58 @@ func (s *FmtUtilSuite) TestPrettyBool(c *C) {
9292}
9393
9494func (s * FmtUtilSuite ) TestParseSize (c * C ) {
95- c .Assert (ParseSize ("1 MB" ), Equals , uint64 (1024 * 1024 ))
96- c .Assert (ParseSize ("1 M" ), Equals , uint64 (1000 * 1000 ))
97- c .Assert (ParseSize ("2tb" ), Equals , uint64 (2 * 1024 * 1024 * 1024 * 1024 ))
98- c .Assert (ParseSize ("2t" ), Equals , uint64 (2 * 1000 * 1000 * 1000 * 1000 ))
99- c .Assert (ParseSize ("5gB" ), Equals , uint64 (5 * 1024 * 1024 * 1024 ))
100- c .Assert (ParseSize ("5g" ), Equals , uint64 (5 * 1000 * 1000 * 1000 ))
101- c .Assert (ParseSize ("13kb" ), Equals , uint64 (13 * 1024 ))
102- c .Assert (ParseSize ("13k" ), Equals , uint64 (13 * 1000 ))
103- c .Assert (ParseSize ("13kk" ), Equals , uint64 (13 * 1000 * 1000 ))
104- c .Assert (ParseSize ("13kkk" ), Equals , uint64 (13 * 1000 * 1000 * 1000 ))
105- c .Assert (ParseSize ("512" ), Equals , uint64 (512 ))
106- c .Assert (ParseSize ("kb" ), Equals , uint64 (0 ))
107- c .Assert (ParseSize ("123!" ), Equals , uint64 (0 ))
108-
109- c .Assert (ParseSize (PrettySize (345 )), Equals , uint64 (345 ))
110- c .Assert (ParseSize (PrettySize (1025 )), Equals , uint64 (1024 ))
111- c .Assert (ParseSize (PrettySize (1024 * 1024 )), Equals , uint64 (1024 * 1024 ))
95+ size , err := ParseSize ("1 MB" )
96+ c .Assert (err , IsNil )
97+ c .Assert (size , Equals , uint64 (1024 * 1024 ))
98+
99+ size , _ = ParseSize ("2tb" )
100+ c .Assert (size , Equals , uint64 (2 * 1024 * 1024 * 1024 * 1024 ))
101+
102+ size , _ = ParseSize ("5gB" )
103+ c .Assert (size , Equals , uint64 (5 * 1024 * 1024 * 1024 ))
104+
105+ size , _ = ParseSize ("13kb" )
106+ c .Assert (size , Equals , uint64 (13 * 1024 ))
107+
108+ size , _ = ParseSize ("1 M" )
109+ c .Assert (size , Equals , uint64 (1000 * 1000 ))
110+
111+ size , _ = ParseSize ("2t" )
112+ c .Assert (size , Equals , uint64 (2 * 1000 * 1000 * 1000 * 1000 ))
113+
114+ size , _ = ParseSize ("5g" )
115+ c .Assert (size , Equals , uint64 (5 * 1000 * 1000 * 1000 ))
116+
117+ size , _ = ParseSize ("13k" )
118+ c .Assert (size , Equals , uint64 (13 * 1000 ))
119+
120+ size , _ = ParseSize ("13kk" )
121+ c .Assert (size , Equals , uint64 (13 * 1000 * 1000 ))
122+
123+ size , _ = ParseSize ("13kkk" )
124+ c .Assert (size , Equals , uint64 (13 * 1000 * 1000 * 1000 ))
125+
126+ size , _ = ParseSize ("512" )
127+ c .Assert (size , Equals , uint64 (512 ))
128+
129+ size , _ = ParseSize (PrettySize (345 ))
130+ c .Assert (size , Equals , uint64 (345 ))
131+
132+ size , _ = ParseSize (PrettySize (1025 ))
133+ c .Assert (size , Equals , uint64 (1024 ))
134+
135+ size , _ = ParseSize (PrettySize (1024 * 1024 ))
136+ c .Assert (size , Equals , uint64 (1024 * 1024 ))
137+
138+ size , err = ParseSize ("kb" )
139+ c .Assert (err , NotNil )
140+ c .Assert (err .Error (), Equals , `size has no digits` )
141+ c .Assert (size , Equals , uint64 (0 ))
142+
143+ size , err = ParseSize ("123!" )
144+ c .Assert (err , NotNil )
145+ c .Assert (err .Error (), Equals , `strconv.ParseFloat: parsing "123!": invalid syntax` )
146+ c .Assert (size , Equals , uint64 (0 ))
112147}
113148
114149func (s * FmtUtilSuite ) TestFloat (c * C ) {
0 commit comments