From 1159ebad5907ab50b64d716108fcad097c013b29 Mon Sep 17 00:00:00 2001 From: Tim Burke Date: Wed, 16 Dec 2015 19:14:51 -0800 Subject: [PATCH] Add S3Timestamp.now() method for the current time Change-Id: I66377d76b7d3dd0674cadb96761a23ccb8f5e95a --- swift3/controllers/multi_upload.py | 3 +-- swift3/controllers/obj.py | 3 +-- swift3/test/unit/test_multi_upload.py | 3 +-- swift3/test/unit/test_obj.py | 3 +-- swift3/utils.py | 5 +++++ 5 files changed, 9 insertions(+), 8 deletions(-) diff --git a/swift3/controllers/multi_upload.py b/swift3/controllers/multi_upload.py index 7d1c6e2b..74be14d1 100644 --- a/swift3/controllers/multi_upload.py +++ b/swift3/controllers/multi_upload.py @@ -45,7 +45,6 @@ upload information: import os import re import sys -import time from swift.common.utils import json from swift.common.db import utf8encode @@ -121,7 +120,7 @@ class PartController(Controller): req.object_name = '%s/%s/%d' % (req.object_name, upload_id, part_number) - req_timestamp = S3Timestamp(time.time()) + req_timestamp = S3Timestamp.now() req.headers['X-Timestamp'] = req_timestamp.internal req.check_copy_source(self.app) resp = req.get_response(self.app) diff --git a/swift3/controllers/obj.py b/swift3/controllers/obj.py index 2c005db7..b9488fad 100644 --- a/swift3/controllers/obj.py +++ b/swift3/controllers/obj.py @@ -14,7 +14,6 @@ # limitations under the License. import sys -import time from swift.common.http import HTTP_OK, HTTP_PARTIAL_CONTENT, HTTP_NO_CONTENT from swift.common.swob import Range, content_range_header_value @@ -98,7 +97,7 @@ class ObjectController(Controller): Handle PUT Object and PUT Object (Copy) request """ # set X-Timestamp by swift3 to use at copy resp body - req_timestamp = S3Timestamp(time.time()) + req_timestamp = S3Timestamp.now() req.headers['X-Timestamp'] = req_timestamp.internal req.check_copy_source(self.app) resp = req.get_response(self.app) diff --git a/swift3/test/unit/test_multi_upload.py b/swift3/test/unit/test_multi_upload.py index ff27e45e..6304615a 100644 --- a/swift3/test/unit/test_multi_upload.py +++ b/swift3/test/unit/test_multi_upload.py @@ -1116,8 +1116,7 @@ class TestSwift3MultiUpload(Swift3TestCase): '/bucket/object?partNumber=1&uploadId=X', environ={'REQUEST_METHOD': 'PUT'}, headers=put_headers) - with patch('swift3.controllers.multi_upload.time.time') as mock_time: - mock_time.return_value = 1396353600.592270 + with patch('swift3.utils.time.time', return_value=1396353600.592270): return self.call_swift3(req) @s3acl diff --git a/swift3/test/unit/test_obj.py b/swift3/test/unit/test_obj.py index 6aca346d..b0d56730 100644 --- a/swift3/test/unit/test_obj.py +++ b/swift3/test/unit/test_obj.py @@ -469,8 +469,7 @@ class TestSwift3Obj(Swift3TestCase): req.date = datetime.now() req.content_type = 'text/plain' - with patch('swift3.controllers.obj.time.time') as mock_time: - mock_time.return_value = 1396353600.000000 + with patch('swift3.utils.time.time', return_value=1396353600.000000): return self.call_swift3(req) @s3acl diff --git a/swift3/utils.py b/swift3/utils.py index 0166343e..dd7ad7a0 100644 --- a/swift3/utils.py +++ b/swift3/utils.py @@ -16,6 +16,7 @@ import re import uuid import base64 +import time from swift.common.utils import get_logger @@ -141,3 +142,7 @@ class S3Timestamp(utils.Timestamp): @property def s3xmlformat(self): return self.isoformat[:-7] + '.000Z' + + @classmethod + def now(cls): + return cls(time.time())