OLD | NEW |
1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
5 | 5 |
6 import os | 6 import os |
7 import sys | 7 import sys |
8 import unittest | 8 import unittest |
9 | 9 |
10 from branch_utility import BranchUtility | 10 from branch_utility import BranchUtility |
11 from fake_url_fetcher import FakeUrlFetcher | 11 from fake_url_fetcher import FakeUrlFetcher |
12 from object_store_creator import ObjectStoreCreator | 12 from object_store_creator import ObjectStoreCreator |
13 from test_object_store import TestObjectStore | 13 from test_object_store import TestObjectStore |
14 | 14 |
15 class BranchUtilityTest(unittest.TestCase): | 15 class BranchUtilityTest(unittest.TestCase): |
16 def setUp(self): | 16 def setUp(self): |
17 self._branch_util = BranchUtility( | 17 self._branch_util = BranchUtility( |
18 os.path.join('branch_utility', 'first.json'), | 18 os.path.join('branch_utility', 'first.json'), |
| 19 os.path.join('branch_utility', 'second.json'), |
19 FakeUrlFetcher(os.path.join(sys.path[0], 'test_data')), | 20 FakeUrlFetcher(os.path.join(sys.path[0], 'test_data')), |
20 ObjectStoreCreator.ForTest()) | 21 ObjectStoreCreator.ForTest()) |
21 | 22 |
22 def testSplitChannelNameFromPath(self): | 23 def testSplitChannelNameFromPath(self): |
23 self.assertEquals(('stable', 'extensions/stuff.html'), | 24 self.assertEquals(('stable', 'extensions/stuff.html'), |
24 self._branch_util.SplitChannelNameFromPath( | 25 self._branch_util.SplitChannelNameFromPath( |
25 'stable/extensions/stuff.html')) | 26 'stable/extensions/stuff.html')) |
26 self.assertEquals(('dev', 'extensions/stuff.html'), | 27 self.assertEquals(('dev', 'extensions/stuff.html'), |
27 self._branch_util.SplitChannelNameFromPath( | 28 self._branch_util.SplitChannelNameFromPath( |
28 'dev/extensions/stuff.html')) | 29 'dev/extensions/stuff.html')) |
29 self.assertEquals(('beta', 'extensions/stuff.html'), | 30 self.assertEquals(('beta', 'extensions/stuff.html'), |
30 self._branch_util.SplitChannelNameFromPath( | 31 self._branch_util.SplitChannelNameFromPath( |
31 'beta/extensions/stuff.html')) | 32 'beta/extensions/stuff.html')) |
32 self.assertEquals(('trunk', 'extensions/stuff.html'), | 33 self.assertEquals(('trunk', 'extensions/stuff.html'), |
33 self._branch_util.SplitChannelNameFromPath( | 34 self._branch_util.SplitChannelNameFromPath( |
34 'trunk/extensions/stuff.html')) | 35 'trunk/extensions/stuff.html')) |
35 self.assertEquals((None, 'extensions/stuff.html'), | 36 self.assertEquals((None, 'extensions/stuff.html'), |
36 self._branch_util.SplitChannelNameFromPath( | 37 self._branch_util.SplitChannelNameFromPath( |
37 'extensions/stuff.html')) | 38 'extensions/stuff.html')) |
38 self.assertEquals((None, 'apps/stuff.html'), | 39 self.assertEquals((None, 'apps/stuff.html'), |
39 self._branch_util.SplitChannelNameFromPath( | 40 self._branch_util.SplitChannelNameFromPath( |
40 'apps/stuff.html')) | 41 'apps/stuff.html')) |
41 self.assertEquals((None, 'extensions/dev/stuff.html'), | 42 self.assertEquals((None, 'extensions/dev/stuff.html'), |
42 self._branch_util.SplitChannelNameFromPath( | 43 self._branch_util.SplitChannelNameFromPath( |
43 'extensions/dev/stuff.html')) | 44 'extensions/dev/stuff.html')) |
44 self.assertEquals((None, 'stuff.html'), | 45 self.assertEquals((None, 'stuff.html'), |
45 self._branch_util.SplitChannelNameFromPath( | 46 self._branch_util.SplitChannelNameFromPath( |
46 'stuff.html')) | 47 'stuff.html')) |
47 | 48 |
48 def testGetBranchForChannel(self): | 49 def testNewestChannel(self): |
49 self.assertEquals('1145', self._branch_util.GetBranchForChannel('dev')) | 50 self.assertEquals('trunk', |
50 self.assertEquals('1084', self._branch_util.GetBranchForChannel('beta')) | 51 self._branch_util.NewestChannel(['trunk', 'dev', 'beta', 'stable'])) |
51 self.assertEquals('1084', self._branch_util.GetBranchForChannel('stable')) | 52 self.assertEquals('dev', |
52 self.assertEquals('trunk', self._branch_util.GetBranchForChannel('trunk')) | 53 self._branch_util.NewestChannel(['dev', 'beta', 'stable'])) |
| 54 self.assertEquals('beta', |
| 55 self._branch_util.NewestChannel(['beta', 'stable'])) |
| 56 self.assertEquals('stable', self._branch_util.NewestChannel(['stable'])) |
| 57 self.assertEquals('beta', self._branch_util.NewestChannel(['beta'])) |
| 58 self.assertEquals('dev', self._branch_util.NewestChannel(['dev'])) |
| 59 self.assertEquals('trunk', self._branch_util.NewestChannel(['trunk'])) |
| 60 |
| 61 def testGetChannelInfo(self): |
| 62 self.assertEquals('trunk', |
| 63 self._branch_util.GetChannelInfo('trunk').channel) |
| 64 self.assertEquals('trunk', |
| 65 self._branch_util.GetChannelInfo('trunk').branch) |
| 66 self.assertEquals('trunk', |
| 67 self._branch_util.GetChannelInfo('trunk').version) |
| 68 self.assertEquals('dev', |
| 69 self._branch_util.GetChannelInfo('dev').channel) |
| 70 self.assertEquals(1500, |
| 71 self._branch_util.GetChannelInfo('dev').branch) |
| 72 self.assertEquals(28, |
| 73 self._branch_util.GetChannelInfo('dev').version) |
| 74 self.assertEquals('beta', |
| 75 self._branch_util.GetChannelInfo('beta').channel) |
| 76 self.assertEquals(1453, |
| 77 self._branch_util.GetChannelInfo('beta').branch) |
| 78 self.assertEquals(27, |
| 79 self._branch_util.GetChannelInfo('beta').version) |
| 80 self.assertEquals('stable', |
| 81 self._branch_util.GetChannelInfo('stable').channel) |
| 82 self.assertEquals(1410, |
| 83 self._branch_util.GetChannelInfo('stable').branch) |
| 84 self.assertEquals(26, |
| 85 self._branch_util.GetChannelInfo('stable').version) |
| 86 |
| 87 def test_ExtractFromVersionJson(self): |
| 88 self.assertEquals(1500, |
| 89 self._branch_util._ExtractFromVersionJson('dev', 'branch')) |
| 90 self.assertEquals(1453, |
| 91 self._branch_util._ExtractFromVersionJson('beta', 'branch')) |
| 92 self.assertEquals(1410, |
| 93 self._branch_util._ExtractFromVersionJson('stable', 'branch')) |
| 94 self.assertEquals('trunk', |
| 95 self._branch_util._ExtractFromVersionJson('trunk', 'branch')) |
| 96 |
| 97 self.assertEquals(28, |
| 98 self._branch_util._ExtractFromVersionJson('dev', 'version')) |
| 99 self.assertEquals(27, |
| 100 self._branch_util._ExtractFromVersionJson('beta', 'version')) |
| 101 self.assertEquals(26, |
| 102 self._branch_util._ExtractFromVersionJson('stable', 'version')) |
| 103 self.assertEquals('trunk', |
| 104 self._branch_util._ExtractFromVersionJson('trunk', 'version')) |
| 105 |
| 106 def testGetLatestVersionNumber(self): |
| 107 self.assertEquals(28, self._branch_util.GetLatestVersionNumber()) |
| 108 |
| 109 def testGetBranchNumberForVersion(self): |
| 110 self.assertEquals(1453, |
| 111 self._branch_util.GetBranchNumberForVersion(27)) |
| 112 self.assertEquals(1410, |
| 113 self._branch_util.GetBranchNumberForVersion(26)) |
| 114 self.assertEquals(1364, |
| 115 self._branch_util.GetBranchNumberForVersion(25)) |
| 116 self.assertEquals(1312, |
| 117 self._branch_util.GetBranchNumberForVersion(24)) |
| 118 self.assertEquals(1271, |
| 119 self._branch_util.GetBranchNumberForVersion(23)) |
| 120 self.assertEquals(1229, |
| 121 self._branch_util.GetBranchNumberForVersion(22)) |
| 122 self.assertEquals(1180, |
| 123 self._branch_util.GetBranchNumberForVersion(21)) |
| 124 self.assertEquals(1132, |
| 125 self._branch_util.GetBranchNumberForVersion(20)) |
| 126 self.assertEquals(1084, |
| 127 self._branch_util.GetBranchNumberForVersion(19)) |
| 128 self.assertEquals(1025, |
| 129 self._branch_util.GetBranchNumberForVersion(18)) |
| 130 self.assertEquals(963, |
| 131 self._branch_util.GetBranchNumberForVersion(17)) |
| 132 self.assertEquals(696, |
| 133 self._branch_util.GetBranchNumberForVersion(11)) |
| 134 self.assertEquals(396, |
| 135 self._branch_util.GetBranchNumberForVersion(5)) |
53 | 136 |
54 if __name__ == '__main__': | 137 if __name__ == '__main__': |
55 unittest.main() | 138 unittest.main() |
OLD | NEW |