Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1342)

Unified Diff: native_client_sdk/src/build_tools/tests/test_update_nacl_manifest.py

Issue 11421138: [NaCl SDK] update_nacl_manifest: Allow manual updating of a version. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 8 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: native_client_sdk/src/build_tools/tests/test_update_nacl_manifest.py
diff --git a/native_client_sdk/src/build_tools/tests/test_update_nacl_manifest.py b/native_client_sdk/src/build_tools/tests/test_update_nacl_manifest.py
index e69f30756dcf61e22e81a67e14b8a305b4f9237c..5f2b0d983738acb5204d6feb16cb6e13ec0e834d 100755
--- a/native_client_sdk/src/build_tools/tests/test_update_nacl_manifest.py
+++ b/native_client_sdk/src/build_tools/tests/test_update_nacl_manifest.py
@@ -136,6 +136,9 @@ class MakeHistory(object):
class MakeFiles(dict):
+ def AddOnlineManifest(self, manifest_string):
+ self['naclsdk_manifest2.json'] = manifest_string
+
def Add(self, bundle, add_archive_for_os=OS_MLW, add_json_for_os=OS_MLW):
for archive in bundle.GetArchives():
if not archive.host_os in add_archive_for_os:
@@ -162,6 +165,7 @@ class TestDelegate(update_nacl_manifest.Delegate):
self.files = files
self.version_mapping = version_mapping
self.dryrun = 0
+ self.called_gsutil_cp = False
def GetRepoManifest(self):
return self.manifest
@@ -187,6 +191,7 @@ class TestDelegate(update_nacl_manifest.Delegate):
return self.files[path]
def GsUtil_cp(self, src, dest, stdin=None):
+ self.called_gsutil_cp = True
dest_path = GetPathFromGsUrl(dest)
if src == '-':
self.files[dest_path] = stdin
@@ -237,8 +242,8 @@ class TestUpdateManifest(unittest.TestCase):
self.delegate = TestDelegate(self.manifest, self.history.history,
self.files, self.version_mapping)
- def _Run(self, host_oses):
- update_nacl_manifest.Run(self.delegate, host_oses)
+ def _Run(self, host_oses, fixed_bundle_versions=None):
+ update_nacl_manifest.Run(self.delegate, host_oses, fixed_bundle_versions)
def _HasUploadedManifest(self):
return 'naclsdk_manifest2.json' in self.files
@@ -530,6 +535,54 @@ mac,canary,21.0.1156.0,2012-05-30 12:14:21.305090"""
p19_bundle = self.uploaded_manifest.GetBundle(B19_R1_NONE.name)
self.assertEqual(p19_bundle.stability, STABLE)
+ def testDontPushIfNoChange(self):
+ # Make an online manifest that already has this bundle.
+ online_manifest = MakeManifest(B18_0_1025_163_R1_MLW)
+ self.files.AddOnlineManifest(online_manifest.GetDataAsString())
+
+ self.manifest = MakeManifest(B18_R1_NONE)
+ self.history.Add(OS_MLW, DEV, V18_0_1025_163)
+ self.files.Add(B18_0_1025_163_R1_MLW)
+
+ self._MakeDelegate()
+ self._Run(OS_MLW)
+ self.assertEqual(False, self.delegate.called_gsutil_cp)
Sam Clegg 2012/11/29 19:39:10 assertFalse() here and below?
binji 2012/11/30 18:55:00 Done.
+
+ def testDontPushIfRollback(self):
+ # Make an online manifest that has a newer bundle
+ online_manifest = MakeManifest(B18_0_1025_184_R1_MLW)
+ self.files.AddOnlineManifest(online_manifest.GetDataAsString())
+
+ self.manifest = MakeManifest(B18_R1_NONE)
+ self.history.Add(OS_MLW, DEV, V18_0_1025_163)
+ self.files.Add(B18_0_1025_163_R1_MLW)
+
+ self._MakeDelegate()
+ self._Run(OS_MLW)
+ self.assertEqual(False, self.delegate.called_gsutil_cp)
+
+ def testRunWithFixedBundleVersions(self):
+ self.manifest = MakeManifest(B18_R1_NONE)
+ self.history.Add(OS_MLW, BETA, V18_0_1025_163)
+ self.files.Add(B18_0_1025_163_R1_MLW)
+ self.files.Add(B18_0_1025_184_R1_MLW)
+
+ self._MakeDelegate()
+ self._Run(OS_MLW, [('pepper_18', '18.0.1025.184')])
+ self._ReadUploadedManifest()
+ self._AssertUploadedManifestHasBundle(B18_0_1025_184_R1_MLW, BETA)
+ self.assertEqual(len(self.uploaded_manifest.GetBundles()), 1)
+
+ def testRunWithMissingFixedBundleVersions(self):
+ self.manifest = MakeManifest(B18_R1_NONE)
+ self.history.Add(OS_MLW, BETA, V18_0_1025_163)
+ self.files.Add(B18_0_1025_163_R1_MLW)
+
+ self._MakeDelegate()
+ self._Run(OS_MLW, [('pepper_18', '18.0.1025.184')])
+ # Nothing should be uploaded if the user gives a missing fixed version.
+ self.assertEqual(False, self.delegate.called_gsutil_cp)
+
class TestUpdateVitals(unittest.TestCase):
def setUp(self):

Powered by Google App Engine
This is Rietveld 408576698