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 | |
14 | 13 |
15 class BranchUtilityTest(unittest.TestCase): | 14 class BranchUtilityTest(unittest.TestCase): |
16 def setUp(self): | 15 def setUp(self): |
17 self._branch_util = BranchUtility( | 16 self._branch_util = BranchUtility( |
18 os.path.join('branch_utility', 'first.json'), | 17 os.path.join('branch_utility', 'first.json'), |
| 18 os.path.join('branch_utility', 'second.json'), |
19 FakeUrlFetcher(os.path.join(sys.path[0], 'test_data')), | 19 FakeUrlFetcher(os.path.join(sys.path[0], 'test_data')), |
20 ObjectStoreCreator.ForTest()) | 20 ObjectStoreCreator.ForTest()) |
21 | 21 |
22 def testSplitChannelNameFromPath(self): | 22 def testSplitChannelNameFromPath(self): |
23 self.assertEquals(('stable', 'extensions/stuff.html'), | 23 self.assertEquals(('stable', 'extensions/stuff.html'), |
24 self._branch_util.SplitChannelNameFromPath( | 24 self._branch_util.SplitChannelNameFromPath( |
25 'stable/extensions/stuff.html')) | 25 'stable/extensions/stuff.html')) |
26 self.assertEquals(('dev', 'extensions/stuff.html'), | 26 self.assertEquals(('dev', 'extensions/stuff.html'), |
27 self._branch_util.SplitChannelNameFromPath( | 27 self._branch_util.SplitChannelNameFromPath( |
28 'dev/extensions/stuff.html')) | 28 'dev/extensions/stuff.html')) |
29 self.assertEquals(('beta', 'extensions/stuff.html'), | 29 self.assertEquals(('beta', 'extensions/stuff.html'), |
30 self._branch_util.SplitChannelNameFromPath( | 30 self._branch_util.SplitChannelNameFromPath( |
31 'beta/extensions/stuff.html')) | 31 'beta/extensions/stuff.html')) |
32 self.assertEquals(('trunk', 'extensions/stuff.html'), | 32 self.assertEquals(('trunk', 'extensions/stuff.html'), |
33 self._branch_util.SplitChannelNameFromPath( | 33 self._branch_util.SplitChannelNameFromPath( |
34 'trunk/extensions/stuff.html')) | 34 'trunk/extensions/stuff.html')) |
35 self.assertEquals((None, 'extensions/stuff.html'), | 35 self.assertEquals((None, 'extensions/stuff.html'), |
36 self._branch_util.SplitChannelNameFromPath( | 36 self._branch_util.SplitChannelNameFromPath( |
37 'extensions/stuff.html')) | 37 'extensions/stuff.html')) |
38 self.assertEquals((None, 'apps/stuff.html'), | 38 self.assertEquals((None, 'apps/stuff.html'), |
39 self._branch_util.SplitChannelNameFromPath( | 39 self._branch_util.SplitChannelNameFromPath( |
40 'apps/stuff.html')) | 40 'apps/stuff.html')) |
41 self.assertEquals((None, 'extensions/dev/stuff.html'), | 41 self.assertEquals((None, 'extensions/dev/stuff.html'), |
42 self._branch_util.SplitChannelNameFromPath( | 42 self._branch_util.SplitChannelNameFromPath( |
43 'extensions/dev/stuff.html')) | 43 'extensions/dev/stuff.html')) |
44 self.assertEquals((None, 'stuff.html'), | 44 self.assertEquals((None, 'stuff.html'), |
45 self._branch_util.SplitChannelNameFromPath( | 45 self._branch_util.SplitChannelNameFromPath( |
46 'stuff.html')) | 46 'stuff.html')) |
47 | 47 |
48 def testGetBranchForChannel(self): | 48 def testNewestChannel(self): |
49 self.assertEquals('1145', self._branch_util.GetBranchForChannel('dev')) | 49 self.assertEquals('trunk', |
50 self.assertEquals('1084', self._branch_util.GetBranchForChannel('beta')) | 50 self._branch_util.NewestChannel(('trunk', 'dev', 'beta', 'stable'))) |
51 self.assertEquals('1084', self._branch_util.GetBranchForChannel('stable')) | 51 self.assertEquals('trunk', |
52 self.assertEquals('trunk', self._branch_util.GetBranchForChannel('trunk')) | 52 self._branch_util.NewestChannel(('stable', 'beta', 'dev', 'trunk'))) |
| 53 self.assertEquals('dev', |
| 54 self._branch_util.NewestChannel(('stable', 'beta', 'dev'))) |
| 55 self.assertEquals('dev', |
| 56 self._branch_util.NewestChannel(('dev', 'beta', 'stable'))) |
| 57 self.assertEquals('beta', |
| 58 self._branch_util.NewestChannel(('beta', 'stable'))) |
| 59 self.assertEquals('beta', |
| 60 self._branch_util.NewestChannel(('stable', 'beta'))) |
| 61 self.assertEquals('stable', self._branch_util.NewestChannel(('stable',))) |
| 62 self.assertEquals('beta', self._branch_util.NewestChannel(('beta',))) |
| 63 self.assertEquals('dev', self._branch_util.NewestChannel(('dev',))) |
| 64 self.assertEquals('trunk', self._branch_util.NewestChannel(('trunk',))) |
| 65 |
| 66 def testGetChannelInfo(self): |
| 67 self.assertEquals('trunk', |
| 68 self._branch_util.GetChannelInfo('trunk').channel) |
| 69 self.assertEquals('trunk', |
| 70 self._branch_util.GetChannelInfo('trunk').branch) |
| 71 self.assertEquals('trunk', |
| 72 self._branch_util.GetChannelInfo('trunk').version) |
| 73 self.assertEquals('dev', |
| 74 self._branch_util.GetChannelInfo('dev').channel) |
| 75 self.assertEquals(1500, |
| 76 self._branch_util.GetChannelInfo('dev').branch) |
| 77 self.assertEquals(28, |
| 78 self._branch_util.GetChannelInfo('dev').version) |
| 79 self.assertEquals('beta', |
| 80 self._branch_util.GetChannelInfo('beta').channel) |
| 81 self.assertEquals(1453, |
| 82 self._branch_util.GetChannelInfo('beta').branch) |
| 83 self.assertEquals(27, |
| 84 self._branch_util.GetChannelInfo('beta').version) |
| 85 self.assertEquals('stable', |
| 86 self._branch_util.GetChannelInfo('stable').channel) |
| 87 self.assertEquals(1410, |
| 88 self._branch_util.GetChannelInfo('stable').branch) |
| 89 self.assertEquals(26, |
| 90 self._branch_util.GetChannelInfo('stable').version) |
| 91 |
| 92 def testGetLatestVersionNumber(self): |
| 93 self.assertEquals(28, self._branch_util.GetLatestVersionNumber()) |
| 94 |
| 95 def testGetBranchForVersion(self): |
| 96 self.assertEquals(1453, |
| 97 self._branch_util.GetBranchForVersion(27)) |
| 98 self.assertEquals(1410, |
| 99 self._branch_util.GetBranchForVersion(26)) |
| 100 self.assertEquals(1364, |
| 101 self._branch_util.GetBranchForVersion(25)) |
| 102 self.assertEquals(1312, |
| 103 self._branch_util.GetBranchForVersion(24)) |
| 104 self.assertEquals(1271, |
| 105 self._branch_util.GetBranchForVersion(23)) |
| 106 self.assertEquals(1229, |
| 107 self._branch_util.GetBranchForVersion(22)) |
| 108 self.assertEquals(1180, |
| 109 self._branch_util.GetBranchForVersion(21)) |
| 110 self.assertEquals(1132, |
| 111 self._branch_util.GetBranchForVersion(20)) |
| 112 self.assertEquals(1084, |
| 113 self._branch_util.GetBranchForVersion(19)) |
| 114 self.assertEquals(1025, |
| 115 self._branch_util.GetBranchForVersion(18)) |
| 116 self.assertEquals(963, |
| 117 self._branch_util.GetBranchForVersion(17)) |
| 118 self.assertEquals(696, |
| 119 self._branch_util.GetBranchForVersion(11)) |
| 120 self.assertEquals(396, |
| 121 self._branch_util.GetBranchForVersion(5)) |
53 | 122 |
54 if __name__ == '__main__': | 123 if __name__ == '__main__': |
55 unittest.main() | 124 unittest.main() |
OLD | NEW |