| Index: third_party/gsutil/gslib/tests/test_logging.py
|
| diff --git a/third_party/gsutil/gslib/tests/test_logging.py b/third_party/gsutil/gslib/tests/test_logging.py
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..375c52c4f9165ca8d06887e2204f0f5abfe92b7f
|
| --- /dev/null
|
| +++ b/third_party/gsutil/gslib/tests/test_logging.py
|
| @@ -0,0 +1,74 @@
|
| +# -*- coding: utf-8 -*-
|
| +# Copyright 2013 Google Inc. All Rights Reserved.
|
| +#
|
| +# Licensed under the Apache License, Version 2.0 (the "License");
|
| +# you may not use this file except in compliance with the License.
|
| +# You may obtain a copy of the License at
|
| +#
|
| +# http://www.apache.org/licenses/LICENSE-2.0
|
| +#
|
| +# Unless required by applicable law or agreed to in writing, software
|
| +# distributed under the License is distributed on an "AS IS" BASIS,
|
| +# 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 logging command."""
|
| +
|
| +from __future__ import absolute_import
|
| +
|
| +import gslib.tests.testcase as testcase
|
| +from gslib.tests.testcase.integration_testcase import SkipForS3
|
| +from gslib.tests.util import ObjectToURI as suri
|
| +
|
| +
|
| +@SkipForS3('Logging command requires S3 ACL configuration on target bucket.')
|
| +class TestLogging(testcase.GsUtilIntegrationTestCase):
|
| + """Integration tests for logging command."""
|
| +
|
| + _enable_log_cmd = ['logging', 'set', 'on']
|
| + _disable_log_cmd = ['logging', 'set', 'off']
|
| + _get_log_cmd = ['logging', 'get']
|
| +
|
| + def testLogging(self):
|
| + """Tests enabling and disabling logging."""
|
| + bucket_uri = self.CreateBucket()
|
| + bucket_suri = suri(bucket_uri)
|
| + stderr = self.RunGsUtil(
|
| + self._enable_log_cmd + ['-b', bucket_suri, bucket_suri],
|
| + return_stderr=True)
|
| + self.assertIn('Enabling logging', stderr)
|
| +
|
| + stdout = self.RunGsUtil(self._get_log_cmd + [bucket_suri],
|
| + return_stdout=True)
|
| + self.assertIn('LogObjectPrefix'.lower(), stdout.lower())
|
| +
|
| + stderr = self.RunGsUtil(self._disable_log_cmd + [bucket_suri],
|
| + return_stderr=True)
|
| + self.assertIn('Disabling logging', stderr)
|
| +
|
| + def testTooFewArgumentsFails(self):
|
| + """Ensures logging commands fail with too few arguments."""
|
| + # No arguments for enable, but valid subcommand.
|
| + stderr = self.RunGsUtil(self._enable_log_cmd, return_stderr=True,
|
| + expected_status=1)
|
| + self.assertIn('command requires at least', stderr)
|
| +
|
| + # No arguments for disable, but valid subcommand.
|
| + stderr = self.RunGsUtil(self._disable_log_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_log_cmd, return_stderr=True,
|
| + expected_status=1)
|
| + self.assertIn('command requires at least', stderr)
|
| +
|
| + # Neither arguments nor subcommand.
|
| + stderr = self.RunGsUtil(['logging'], return_stderr=True, expected_status=1)
|
| + self.assertIn('command requires at least', stderr)
|
| +
|
| +
|
| +class TestLoggingOldAlias(TestLogging):
|
| + _enable_log_cmd = ['enablelogging']
|
| + _disable_log_cmd = ['disablelogging']
|
| + _get_log_cmd = ['getlogging']
|
|
|