Index: native_client_sdk/src/build_tools/tests/update_nacl_manifest_test.py |
diff --git a/native_client_sdk/src/build_tools/tests/update_nacl_manifest_test.py b/native_client_sdk/src/build_tools/tests/update_nacl_manifest_test.py |
index 9b85bd6d4552bf6c34c110cc37c620a448bbe903..8820b692b3042dfd16884c2d3584e20294f57644 100755 |
--- a/native_client_sdk/src/build_tools/tests/update_nacl_manifest_test.py |
+++ b/native_client_sdk/src/build_tools/tests/update_nacl_manifest_test.py |
@@ -21,13 +21,14 @@ BUILD_TOOLS_DIR = os.path.dirname(SCRIPT_DIR) |
sys.path.append(BUILD_TOOLS_DIR) |
import manifest_util |
import update_nacl_manifest |
-from update_nacl_manifest import CANARY_BUNDLE_NAME |
+from update_nacl_manifest import CANARY_BUNDLE_NAME, BIONIC_CANARY_BUNDLE_NAME |
HTTPS_BASE_URL = 'https://storage.googleapis.com' \ |
'/nativeclient_mirror/nacl/nacl_sdk/' |
OS_CR = ('cros',) |
+OS_L = ('linux',) |
OS_M = ('mac',) |
OS_ML = ('mac', 'linux') |
OS_MW = ('mac', 'win') |
@@ -50,6 +51,11 @@ def GetPlatformArchiveUrl(host_os, version): |
return GetArchiveURL(basename, version) |
+def GetBionicArchiveUrl(version): |
+ basename = 'naclsdk_bionic.tar.bz2' |
+ return GetArchiveURL(basename, version) |
+ |
+ |
def MakeGsUrl(rel_path): |
return update_nacl_manifest.GS_BUCKET_PATH + rel_path |
@@ -78,6 +84,10 @@ def MakePlatformArchive(host_os, version): |
return MakeArchive(GetPlatformArchiveUrl(host_os, version), host_os) |
+def MakeBionicArchive(host_os, version): |
+ return MakeArchive(GetBionicArchiveUrl(version), host_os) |
+ |
+ |
def MakeNonPlatformArchive(basename, version): |
return MakeArchive(GetArchiveURL(basename, version), 'all') |
@@ -100,20 +110,19 @@ def MakeNonPepperBundle(name, with_archives=False): |
return bundle |
-def MakePepperBundle(major_version, revision=0, version=None, stability='dev'): |
+def MakePepperBundle(major_version, revision=0, version=None, stability='dev', |
+ bundle_name=None): |
assert (version is None or |
version.split('.')[0] == 'trunk' or |
version.split('.')[0] == str(major_version)) |
- if stability == CANARY: |
- bundle_name = CANARY_BUNDLE_NAME |
- else: |
+ if not bundle_name: |
bundle_name = 'pepper_' + str(major_version) |
bundle = manifest_util.Bundle(bundle_name) |
bundle.version = major_version |
bundle.revision = revision |
bundle.description = 'Chrome %s bundle, revision %s' % (major_version, |
- revision) |
+ revision) |
bundle.repath = 'pepper_' + str(major_version) |
bundle.recommended = 'no' |
bundle.stability = stability |
@@ -122,7 +131,7 @@ def MakePepperBundle(major_version, revision=0, version=None, stability='dev'): |
def MakePlatformBundle(major_version, revision=0, version=None, host_oses=None, |
- stability='dev'): |
+ stability='dev'): |
bundle = MakePepperBundle(major_version, revision, version, stability) |
if host_oses: |
@@ -132,6 +141,16 @@ def MakePlatformBundle(major_version, revision=0, version=None, host_oses=None, |
return bundle |
+def MakeBionicBundle(major_version, revision=0, version=None, host_oses=None): |
+ bundle = MakePepperBundle(major_version, revision, version, 'dev') |
+ |
+ if host_oses: |
+ for host_os in host_oses: |
+ bundle.AddArchive(MakeBionicArchive(host_os, version)) |
+ |
+ return bundle |
+ |
+ |
class MakeManifest(manifest_util.SDKManifest): |
def __init__(self, *args): |
manifest_util.SDKManifest.__init__(self) |
@@ -240,20 +259,26 @@ V21_0_1145_0 = '21.0.1145.0' |
V21_0_1166_0 = '21.0.1166.0' |
V26_0_1386_0 = '26.0.1386.0' |
V26_0_1386_1 = '26.0.1386.1' |
+V37_0_2054_0 = '37.0.2054.0' |
VTRUNK_140819 = 'trunk.140819' |
+VTRUNK_277776 = 'trunk.277776' |
B18_0_1025_163_MLW = MakePlatformBundle(18, 132135, V18_0_1025_163, OS_MLW) |
B18_0_1025_184_MLW = MakePlatformBundle(18, 134900, V18_0_1025_184, OS_MLW) |
B18_NONE = MakePlatformBundle(18) |
B19_0_1084_41_MLW = MakePlatformBundle(19, 134854, V19_0_1084_41, OS_MLW) |
B19_0_1084_67_MLW = MakePlatformBundle(19, 142000, V19_0_1084_67, OS_MLW) |
B19_NONE = MakePlatformBundle(19) |
-BCANARY_NONE = MakePlatformBundle(0, stability=CANARY) |
+BCANARY_NONE = MakePepperBundle(0, stability=CANARY, |
+ bundle_name=CANARY_BUNDLE_NAME) |
B21_0_1145_0_MLW = MakePlatformBundle(21, 138079, V21_0_1145_0, OS_MLW) |
B21_0_1166_0_MW = MakePlatformBundle(21, 140819, V21_0_1166_0, OS_MW) |
B26_NONE = MakePlatformBundle(26) |
B26_0_1386_0_MLW = MakePlatformBundle(26, 177362, V26_0_1386_0, OS_MLW) |
B26_0_1386_1_MLW = MakePlatformBundle(26, 177439, V26_0_1386_1, OS_MLW) |
BTRUNK_140819_MLW = MakePlatformBundle(21, 140819, VTRUNK_140819, OS_MLW) |
+BBIONIC_NONE = MakePepperBundle(0, stability=CANARY, |
+ bundle_name=BIONIC_CANARY_BUNDLE_NAME) |
+BBIONIC_TRUNK_277776 = MakeBionicBundle(37, 277776, VTRUNK_277776, OS_L) |
NON_PEPPER_BUNDLE_NOARCHIVES = MakeNonPepperBundle('foo') |
NON_PEPPER_BUNDLE_ARCHIVES = MakeNonPepperBundle('bar', with_archives=True) |
@@ -267,7 +292,7 @@ class TestUpdateManifest(unittest.TestCase): |
self.uploaded_manifest = None |
self.manifest = None |
# Ignore logging warnings, etc. |
- logging.getLogger('update_nacl_manifest').setLevel(logging.CRITICAL) |
+ logging.getLogger('update_nacl_manifest').setLevel(logging.INFO) |
def _MakeDelegate(self): |
self.delegate = TestDelegate(self.manifest, self.history.history, |
@@ -285,10 +310,9 @@ class TestUpdateManifest(unittest.TestCase): |
self.uploaded_manifest.LoadDataFromString( |
self.files['naclsdk_manifest2.json']) |
- def _AssertUploadedManifestHasBundle(self, bundle, stability): |
- if stability == CANARY: |
- bundle_name = CANARY_BUNDLE_NAME |
- else: |
+ def _AssertUploadedManifestHasBundle(self, bundle, stability, |
+ bundle_name=None): |
+ if not bundle_name: |
bundle_name = bundle.name |
uploaded_manifest_bundle = self.uploaded_manifest.GetBundle(bundle_name) |
@@ -297,8 +321,8 @@ class TestUpdateManifest(unittest.TestCase): |
# So we have to force the stability of |bundle| so they compare equal. |
test_bundle = copy.copy(bundle) |
test_bundle.stability = stability |
- if stability == CANARY: |
- test_bundle.name = CANARY_BUNDLE_NAME |
+ if bundle_name: |
+ test_bundle.name = bundle_name |
self.assertEqual(uploaded_manifest_bundle, test_bundle) |
def _AddCsvHistory(self, history): |
@@ -465,7 +489,8 @@ class TestUpdateManifest(unittest.TestCase): |
self._MakeDelegate() |
self._Run(OS_MLW) |
self._ReadUploadedManifest() |
- self._AssertUploadedManifestHasBundle(B21_0_1145_0_MLW, CANARY) |
+ self._AssertUploadedManifestHasBundle(B21_0_1145_0_MLW, CANARY, |
+ bundle_name=CANARY_BUNDLE_NAME) |
def testUpdateCanaryUseTrunkArchives(self): |
canary_bundle = copy.deepcopy(BCANARY_NONE) |
@@ -480,7 +505,8 @@ class TestUpdateManifest(unittest.TestCase): |
test_bundle = copy.deepcopy(B21_0_1166_0_MW) |
test_bundle.AddArchive(BTRUNK_140819_MLW.GetArchive('linux')) |
- self._AssertUploadedManifestHasBundle(test_bundle, CANARY) |
+ self._AssertUploadedManifestHasBundle(test_bundle, CANARY, |
+ bundle_name=CANARY_BUNDLE_NAME) |
def testCanaryUseOnlyTrunkArchives(self): |
self.manifest = MakeManifest(copy.deepcopy(BCANARY_NONE)) |
@@ -493,7 +519,8 @@ mac,canary,21.0.1163.0,2012-06-04 11:54:09.433166""" |
self._MakeDelegate() |
self._Run(OS_MLW) |
self._ReadUploadedManifest() |
- self._AssertUploadedManifestHasBundle(my_bundle, CANARY) |
+ self._AssertUploadedManifestHasBundle(my_bundle, CANARY, |
+ bundle_name=CANARY_BUNDLE_NAME) |
def testCanaryShouldOnlyUseCanaryVersions(self): |
canary_bundle = copy.deepcopy(BCANARY_NONE) |
@@ -538,7 +565,8 @@ mac,canary,21.0.1156.0,2012-05-30 12:14:21.305090""" |
self._MakeDelegate() |
self._Run(OS_MLW) |
self._ReadUploadedManifest() |
- self._AssertUploadedManifestHasBundle(my_bundle, CANARY) |
+ self._AssertUploadedManifestHasBundle(my_bundle, CANARY, |
+ bundle_name=CANARY_BUNDLE_NAME) |
def testExtensionWorksAsBz2(self): |
# Allow old bundles with just .bz2 extension to work |
@@ -727,7 +755,8 @@ mac,canary,31.0.1608.0,2013-08-22 07:18:09.762600""" |
self._MakeDelegate() |
self._Run(OS_MLW) |
self._ReadUploadedManifest() |
- self._AssertUploadedManifestHasBundle(my_bundle, CANARY) |
+ self._AssertUploadedManifestHasBundle(my_bundle, CANARY, |
+ bundle_name=CANARY_BUNDLE_NAME) |
def testDontIgnoreLastDigitForNonCanary(self): |
self.manifest = MakeManifest(B26_NONE) |
@@ -745,6 +774,18 @@ mac,canary,31.0.1608.0,2013-08-22 07:18:09.762600""" |
self.assertRaises(update_nacl_manifest.UnknownLockedBundleException, |
self._Run, OS_MLW) |
+ def testUpdateBionic(self): |
+ bionic_bundle = copy.deepcopy(BBIONIC_NONE) |
+ self.manifest = MakeManifest(bionic_bundle) |
+ self.history.Add(OS_MW, CANARY, V37_0_2054_0) |
+ self.files.Add(BBIONIC_TRUNK_277776) |
+ self.version_mapping[V37_0_2054_0] = VTRUNK_277776 |
+ self._MakeDelegate() |
+ self._Run(OS_MLW) |
+ self._ReadUploadedManifest() |
+ self._AssertUploadedManifestHasBundle(BBIONIC_TRUNK_277776, CANARY, |
+ bundle_name=BIONIC_CANARY_BUNDLE_NAME) |
+ |
class TestUpdateVitals(unittest.TestCase): |
def setUp(self): |
@@ -800,4 +841,5 @@ class TestRealDelegate(unittest.TestCase): |
if __name__ == '__main__': |
+ logging.basicConfig(level=logging.INFO) |
sys.exit(unittest.main()) |