| OLD | NEW | 
|   1 // Copyright 2015 The Chromium Authors. All rights reserved. |   1 // Copyright 2015 The Chromium Authors. All rights reserved. | 
|   2 // Use of this source code is governed by a BSD-style license that can be |   2 // Use of this source code is governed by a BSD-style license that can be | 
|   3 // found in the LICENSE file. |   3 // found in the LICENSE file. | 
|   4  |   4  | 
|   5 package common |   5 package common | 
|   6  |   6  | 
|   7 import ( |   7 import ( | 
|   8         "errors" |  | 
|   9         "testing" |   8         "testing" | 
|  10         "time" |   9         "time" | 
|  11  |  10  | 
|  12         "github.com/maruel/ut" |  11         "github.com/maruel/ut" | 
|  13 ) |  12 ) | 
|  14  |  13  | 
|  15 func TestSizeToString(t *testing.T) { |  14 func TestSizeToString(t *testing.T) { | 
|  16         data := []struct { |  15         data := []struct { | 
|  17                 in       int64 |  16                 in       int64 | 
|  18                 expected string |  17                 expected string | 
|  19         }{ |  18         }{ | 
|  20                 {0, "0b"}, |  19                 {0, "0b"}, | 
|  21                 {1, "1b"}, |  20                 {1, "1b"}, | 
|  22                 {1000, "1000b"}, |  21                 {1000, "1000b"}, | 
|  23                 {1023, "1023b"}, |  22                 {1023, "1023b"}, | 
|  24                 {1024, "1.00Kib"}, |  23                 {1024, "1.00Kib"}, | 
|  25                 {1029, "1.00Kib"}, |  24                 {1029, "1.00Kib"}, | 
|  26                 {1030, "1.01Kib"}, |  25                 {1030, "1.01Kib"}, | 
|  27                 {10234, "9.99Kib"}, |  26                 {10234, "9.99Kib"}, | 
|  28                 {10239, "10.00Kib"}, |  27                 {10239, "10.00Kib"}, | 
|  29                 {10240, "10.0Kib"}, |  28                 {10240, "10.0Kib"}, | 
|  30                 {1048575, "1024.0Kib"}, |  29                 {1048575, "1024.0Kib"}, | 
|  31                 {1048576, "1.00Mib"}, |  30                 {1048576, "1.00Mib"}, | 
|  32         } |  31         } | 
|  33         for i, line := range data { |  32         for i, line := range data { | 
|  34                 ut.AssertEqualIndex(t, i, line.expected, SizeToString(line.in)) |  33                 ut.AssertEqualIndex(t, i, line.expected, SizeToString(line.in)) | 
|  35         } |  34         } | 
|  36 } |  35 } | 
|  37  |  36  | 
|  38 func TestURLToHTTPS(t *testing.T) { |  | 
|  39         data := []struct { |  | 
|  40                 in       string |  | 
|  41                 expected string |  | 
|  42                 err      error |  | 
|  43         }{ |  | 
|  44                 {"foo", "https://foo", nil}, |  | 
|  45                 {"https://foo", "https://foo", nil}, |  | 
|  46                 {"http://foo", "", errors.New("Only https:// scheme is accepted.
     It can be omitted.")}, |  | 
|  47         } |  | 
|  48         for i, line := range data { |  | 
|  49                 out, err := URLToHTTPS(line.in) |  | 
|  50                 ut.AssertEqualIndex(t, i, line.expected, out) |  | 
|  51                 ut.AssertEqualIndex(t, i, line.err, err) |  | 
|  52         } |  | 
|  53 } |  | 
|  54  |  | 
|  55 func TestRound(t *testing.T) { |  37 func TestRound(t *testing.T) { | 
|  56         data := []struct { |  38         data := []struct { | 
|  57                 in       time.Duration |  39                 in       time.Duration | 
|  58                 round    time.Duration |  40                 round    time.Duration | 
|  59                 expected time.Duration |  41                 expected time.Duration | 
|  60         }{ |  42         }{ | 
|  61                 {-time.Second, time.Second, -time.Second}, |  43                 {-time.Second, time.Second, -time.Second}, | 
|  62                 {-500 * time.Millisecond, time.Second, -time.Second}, |  44                 {-500 * time.Millisecond, time.Second, -time.Second}, | 
|  63                 {-499 * time.Millisecond, time.Second, 0}, |  45                 {-499 * time.Millisecond, time.Second, 0}, | 
|  64                 {0, time.Second, 0}, |  46                 {0, time.Second, 0}, | 
|  65                 {499 * time.Millisecond, time.Second, 0}, |  47                 {499 * time.Millisecond, time.Second, 0}, | 
|  66                 {500 * time.Millisecond, time.Second, time.Second}, |  48                 {500 * time.Millisecond, time.Second, time.Second}, | 
|  67                 {time.Second, time.Second, time.Second}, |  49                 {time.Second, time.Second, time.Second}, | 
|  68         } |  50         } | 
|  69         for i, line := range data { |  51         for i, line := range data { | 
|  70                 ut.AssertEqualIndex(t, i, line.expected, Round(line.in, line.rou
    nd)) |  52                 ut.AssertEqualIndex(t, i, line.expected, Round(line.in, line.rou
    nd)) | 
|  71         } |  53         } | 
|  72 } |  54 } | 
| OLD | NEW |