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

Unified Diff: gslib/tests/test_versioning.py

Issue 698893003: Update checked in version of gsutil to version 4.6 (Closed) Base URL: http://dart.googlecode.com/svn/third_party/gsutil/
Patch Set: Created 6 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
« no previous file with comments | « gslib/tests/test_util.py ('k') | gslib/tests/test_web.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gslib/tests/test_versioning.py
===================================================================
--- gslib/tests/test_versioning.py (revision 33376)
+++ gslib/tests/test_versioning.py (working copy)
@@ -1,3 +1,4 @@
+# -*- coding: utf-8 -*-
# Copyright 2013 Google Inc. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
@@ -11,49 +12,70 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+"""Integration tests for versioning command."""
+from __future__ import absolute_import
+
import gslib.tests.testcase as testcase
from gslib.tests.util import ObjectToURI as suri
+from gslib.util import Retry
class TestVersioning(testcase.GsUtilIntegrationTestCase):
"""Integration tests for versioning command."""
-
- _set_cmd_prefix = ['versioning', 'set']
- _get_cmd_prefix = ['versioning', 'get']
+ _set_ver_cmd = ['versioning', 'set']
+ _get_ver_cmd = ['versioning', 'get']
+
def test_off_default(self):
bucket_uri = self.CreateBucket()
stdout = self.RunGsUtil(
- self._get_cmd_prefix + [suri(bucket_uri)], return_stdout=True)
+ self._get_ver_cmd + [suri(bucket_uri)], return_stdout=True)
self.assertEqual(stdout.strip(), '%s: Suspended' % suri(bucket_uri))
def test_turning_on(self):
bucket_uri = self.CreateBucket()
- self.RunGsUtil(self._set_cmd_prefix + ['on', suri(bucket_uri)])
- stdout = self.RunGsUtil(
- self._get_cmd_prefix + [suri(bucket_uri)], return_stdout=True)
- self.assertEqual(stdout.strip(), '%s: Enabled' % suri(bucket_uri))
+ self.RunGsUtil(self._set_ver_cmd + ['on', suri(bucket_uri)])
+ # Work around eventual consistency for S3 versioning.
+ @Retry(AssertionError, tries=3, timeout_secs=1)
+ def _Check1():
+ stdout = self.RunGsUtil(
+ self._get_ver_cmd + [suri(bucket_uri)], return_stdout=True)
+ self.assertEqual(stdout.strip(), '%s: Enabled' % suri(bucket_uri))
+ _Check1()
+
def test_turning_off(self):
bucket_uri = self.CreateBucket()
- self.RunGsUtil(self._set_cmd_prefix + ['on', suri(bucket_uri)])
- stdout = self.RunGsUtil(
- self._get_cmd_prefix + [suri(bucket_uri)], return_stdout=True)
- self.assertEqual(stdout.strip(), '%s: Enabled' % suri(bucket_uri))
- self.RunGsUtil(self._set_cmd_prefix + ['off', suri(bucket_uri)])
- stdout = self.RunGsUtil(
- self._get_cmd_prefix + [suri(bucket_uri)], return_stdout=True)
- self.assertEqual(stdout.strip(), '%s: Suspended' % suri(bucket_uri))
+ self.RunGsUtil(self._set_ver_cmd + ['on', suri(bucket_uri)])
+ # Work around eventual consistency for S3 versioning.
+ @Retry(AssertionError, tries=3, timeout_secs=1)
+ def _Check1():
+ stdout = self.RunGsUtil(
+ self._get_ver_cmd + [suri(bucket_uri)], return_stdout=True)
+ self.assertEqual(stdout.strip(), '%s: Enabled' % suri(bucket_uri))
+ _Check1()
+
+ self.RunGsUtil(self._set_ver_cmd + ['off', suri(bucket_uri)])
+
+ # Work around eventual consistency for S3 versioning.
+ @Retry(AssertionError, tries=3, timeout_secs=1)
+ def _Check2():
+ stdout = self.RunGsUtil(
+ self._get_ver_cmd + [suri(bucket_uri)], return_stdout=True)
+ self.assertEqual(stdout.strip(), '%s: Suspended' % suri(bucket_uri))
+ _Check2()
+
def testTooFewArgumentsFails(self):
+ """Ensures versioning commands fail with too few arguments."""
# No arguments for set, but valid subcommand.
- stderr = self.RunGsUtil(self._set_cmd_prefix, return_stderr=True,
+ stderr = self.RunGsUtil(self._set_ver_cmd, return_stderr=True,
expected_status=1)
self.assertIn('command requires at least', stderr)
# No arguments for get, but valid subcommand.
- stderr = self.RunGsUtil(self._get_cmd_prefix, return_stderr=True,
+ stderr = self.RunGsUtil(self._get_ver_cmd, return_stderr=True,
expected_status=1)
self.assertIn('command requires at least', stderr)
@@ -62,6 +84,7 @@
expected_status=1)
self.assertIn('command requires at least', stderr)
+
class TestVersioningOldAlias(TestVersioning):
- _set_cmd_prefix = ['setversioning']
- _get_cmd_prefix = ['getversioning']
+ _set_ver_cmd = ['setversioning']
+ _get_ver_cmd = ['getversioning']
« no previous file with comments | « gslib/tests/test_util.py ('k') | gslib/tests/test_web.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698