本文整理汇总了Python中st2common.util.isotime.add_utc_tz函数的典型用法代码示例。如果您正苦于以下问题:Python add_utc_tz函数的具体用法?Python add_utc_tz怎么用?Python add_utc_tz使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了add_utc_tz函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_token_post_set_ttl
def test_token_post_set_ttl(self):
timestamp = isotime.add_utc_tz(datetime.datetime.utcnow())
response = self.app.post_json('/tokens', {'ttl': 60}, expect_errors=False)
expected_expiry = datetime.datetime.utcnow() + datetime.timedelta(seconds=60)
expected_expiry = isotime.add_utc_tz(expected_expiry)
self.assertEqual(response.status_int, 201)
actual_expiry = isotime.parse(response.json['expiry'])
self.assertLess(timestamp, actual_expiry)
self.assertLess(actual_expiry, expected_expiry)
示例2: _test_token_post
def _test_token_post(self):
ttl = cfg.CONF.auth.token_ttl
timestamp = isotime.add_utc_tz(datetime.datetime.utcnow())
response = self.app.post_json('/tokens', {}, expect_errors=False)
expected_expiry = datetime.datetime.utcnow() + datetime.timedelta(seconds=ttl)
expected_expiry = isotime.add_utc_tz(expected_expiry)
self.assertEqual(response.status_int, 201)
self.assertIsNotNone(response.json['token'])
self.assertEqual(response.json['user'], USERNAME)
actual_expiry = isotime.parse(response.json['expiry'])
self.assertLess(timestamp, actual_expiry)
self.assertLess(actual_expiry, expected_expiry)
示例3: test_token_successfully_obtained
def test_token_successfully_obtained(self):
time_now = isotime.add_utc_tz(datetime.datetime.now())
registrar = InternalTriggerTypesRegistrar()
self.assertTrue(registrar._auth_creds is not None)
# TTL is at least 10 mins
self.assertTrue((registrar._auth_creds.expiry - time_now).seconds > 10 * 60)
delete_token(registrar._auth_creds.token)
示例4: validate_token
def validate_token(token_in_headers, token_in_query_params):
"""
Validate the provided authentication token.
:param token_in_headers: Authentication token provided via headers.
:type token_in_headers: ``str``
:param token_in_query_params: Authentication token provided via query params.
:type token_in_query_params: ``str``
:return: TokenDB object on success.
:rtype: :class:`.TokenDB`
"""
if not token_in_headers and not token_in_query_params:
LOG.audit('Token is not found in header or query parameters.')
raise exceptions.TokenNotProvidedError('Token is not provided.')
if token_in_headers:
LOG.audit('Token provided in headers')
if token_in_query_params:
LOG.audit('Token provided in query parameters')
token_string = token_in_headers or token_in_query_params
token = Token.get(token_string)
if token.expiry <= isotime.add_utc_tz(datetime.datetime.utcnow()):
# TODO: purge expired tokens
LOG.audit('Token with id "%s" has expired.' % (token.id))
raise exceptions.TokenExpiredError('Token has expired.')
LOG.audit('Token with id "%s" is validated.' % (token.id))
return token
示例5: test_create_token_ttl_ok
def test_create_token_ttl_ok(self):
ttl = 10
token = access.create_token(USERNAME, 10)
self.assertTrue(token is not None)
self.assertTrue(token.token is not None)
self.assertEqual(token.user, USERNAME)
expected_expiry = datetime.datetime.utcnow() + datetime.timedelta(seconds=ttl)
expected_expiry = isotime.add_utc_tz(expected_expiry)
self.assertLess(isotime.parse(token.expiry), expected_expiry)
示例6: test_create_token_ttl_capped
def test_create_token_ttl_capped(self):
ttl = cfg.CONF.auth.token_ttl + 10
expected_expiry = datetime.datetime.utcnow() + datetime.timedelta(seconds=ttl)
expected_expiry = isotime.add_utc_tz(expected_expiry)
token = access.create_token('manas', 10)
self.assertTrue(token is not None)
self.assertTrue(token.token is not None)
self.assertEqual(token.user, 'manas')
self.assertLess(isotime.parse(token.expiry), expected_expiry)
示例7: _validate_token
def _validate_token(self, env):
"""Validate token"""
if 'HTTP_X_AUTH_TOKEN' not in env:
LOG.audit('Token is not found in header.')
raise exceptions.TokenNotProvidedError('Token is not provided.')
token = Token.get(env['HTTP_X_AUTH_TOKEN'])
if token.expiry <= isotime.add_utc_tz(datetime.datetime.utcnow()):
LOG.audit('Token "%s" has expired.' % env['HTTP_X_AUTH_TOKEN'])
raise exceptions.TokenExpiredError('Token has expired.')
LOG.audit('Token "%s" is validated.' % env['HTTP_X_AUTH_TOKEN'])
return token
示例8: _update_live_action_db
def _update_live_action_db(self, liveaction_id, status, result, context):
liveaction_db = get_liveaction_by_id(liveaction_id)
if status in DONE_STATES:
end_timestamp = isotime.add_utc_tz(datetime.datetime.utcnow())
else:
end_timestamp = None
liveaction_db = update_liveaction_status(status=status,
result=result,
context=context,
end_timestamp=end_timestamp,
liveaction_db=liveaction_db)
return liveaction_db
示例9: test_format
def test_format(self):
dt = isotime.add_utc_tz(datetime.datetime(2000, 1, 1, 12))
dt_str_usec_offset = '2000-01-01T12:00:00.000000+00:00'
dt_str_usec = '2000-01-01T12:00:00.000000Z'
dt_str_offset = '2000-01-01T12:00:00+00:00'
dt_str = '2000-01-01T12:00:00Z'
dt_unicode = u'2000-01-01T12:00:00Z'
self.assertEqual(isotime.format(dt, usec=True, offset=True), dt_str_usec_offset)
self.assertEqual(isotime.format(dt, usec=True, offset=False), dt_str_usec)
self.assertEqual(isotime.format(dt, usec=False, offset=True), dt_str_offset)
self.assertEqual(isotime.format(dt, usec=False, offset=False), dt_str)
self.assertEqual(isotime.format(dt_str, usec=False, offset=False), dt_str)
self.assertEqual(isotime.format(dt_unicode, usec=False, offset=False), dt_unicode)
示例10: test_parse
def test_parse(self):
dt = isotime.add_utc_tz(datetime.datetime(2000, 1, 1, 12))
self.assertEqual(isotime.parse('2000-01-01 12:00:00Z'), dt)
self.assertEqual(isotime.parse('2000-01-01 12:00:00+00'), dt)
self.assertEqual(isotime.parse('2000-01-01 12:00:00+0000'), dt)
self.assertEqual(isotime.parse('2000-01-01 12:00:00+00:00'), dt)
self.assertEqual(isotime.parse('2000-01-01 12:00:00.000000Z'), dt)
self.assertEqual(isotime.parse('2000-01-01 12:00:00.000000+00'), dt)
self.assertEqual(isotime.parse('2000-01-01 12:00:00.000000+0000'), dt)
self.assertEqual(isotime.parse('2000-01-01 12:00:00.000000+00:00'), dt)
self.assertEqual(isotime.parse('2000-01-01T12:00:00Z'), dt)
self.assertEqual(isotime.parse('2000-01-01T12:00:00+00:00'), dt)
self.assertEqual(isotime.parse('2000-01-01T12:00:00.000000Z'), dt)
self.assertEqual(isotime.parse('2000-01-01T12:00:00.000000+00:00'), dt)
self.assertEqual(isotime.parse('2000-01-01T12:00:00.000Z'), dt)
示例11: delete
def delete(self, exec_id):
"""
Stops a single execution.
Handles requests:
DELETE /actionexecutions/<id>
"""
execution_api = self._get_one(id=exec_id)
if not execution_api:
abort(http_client.NOT_FOUND, 'Execution with id %s not found.' % exec_id)
return
liveaction_id = execution_api.liveaction['id']
if not liveaction_id:
abort(http_client.INTERNAL_SERVER_ERROR,
'Execution object missing link to liveaction %s.' % liveaction_id)
try:
liveaction_db = LiveAction.get_by_id(liveaction_id)
except:
abort(http_client.INTERNAL_SERVER_ERROR,
'Execution object missing link to liveaction %s.' % liveaction_id)
return
if liveaction_db.status == LIVEACTION_STATUS_CANCELED:
abort(http_client.OK,
'Action is already in "canceled" state.')
if liveaction_db.status not in CANCELABLE_STATES:
abort(http_client.OK,
'Action cannot be canceled. State = %s.' % liveaction_db.status)
return
liveaction_db.status = 'canceled'
liveaction_db.end_timestamp = isotime.add_utc_tz(datetime.datetime.utcnow())
liveaction_db.result = {'message': 'Action canceled by user.'}
try:
LiveAction.add_or_update(liveaction_db)
except:
LOG.exception('Failed updating status to canceled for liveaction %s.',
liveaction_db.id)
abort(http_client.INTERNAL_SERVER_ERROR, 'Failed canceling execution.')
return
execution_db = execution_service.update_execution(liveaction_db)
return ActionExecutionAPI.from_model(execution_db)
示例12: test_datetime_range
def test_datetime_range(self):
base = isotime.add_utc_tz(datetime.datetime(2014, 12, 25, 0, 0, 0))
for i in range(60):
timestamp = base + datetime.timedelta(seconds=i)
obj = FakeModelDB(name=uuid.uuid4().hex, timestamp=timestamp)
self.access.add_or_update(obj)
dt_range = '2014-12-25T00:00:10Z..2014-12-25T00:00:19Z'
objs = self.access.query(timestamp=dt_range)
self.assertEqual(len(objs), 10)
self.assertLess(objs[0].timestamp, objs[9].timestamp)
dt_range = '2014-12-25T00:00:19Z..2014-12-25T00:00:10Z'
objs = self.access.query(timestamp=dt_range)
self.assertEqual(len(objs), 10)
self.assertLess(objs[9].timestamp, objs[0].timestamp)
示例13: test_delayed_executions_recovery_before_timeout
def test_delayed_executions_recovery_before_timeout(self):
# Create a live action that's delayed but has not passed the timeout.
liveaction = LiveActionDB(action='wolfpack.action-1',
parameters={'actionstr': 'foo'},
start_timestamp=isotime.add_utc_tz(datetime.datetime.utcnow()),
status=action_constants.LIVEACTION_STATUS_DELAYED)
liveaction = LiveAction.add_or_update(liveaction, publish=False)
executions.create_execution_object(liveaction, publish=False)
# Run the rescheduling routine.
scheduler.recover_delayed_executions()
# The live action is expected to stay "delayed".
liveaction = LiveAction.get_by_id(str(liveaction.id))
self.assertEqual(liveaction.status, action_constants.LIVEACTION_STATUS_DELAYED)
示例14: create_token
def create_token(username, ttl=None, metadata=None):
"""
:param username: Username of the user to create the token for. If the account for this user
doesn't exist yet it will be created.
:type username: ``str``
:param ttl: Token TTL (in seconds).
:type ttl: ``int``
:param metadata: Optional metadata to associate with the token.
:type metadata: ``dict``
"""
if ttl:
if ttl > cfg.CONF.auth.token_ttl:
msg = 'TTL specified %s is greater than max allowed %s.' % (
ttl, cfg.CONF.auth.token_ttl
)
raise TTLTooLargeException(msg)
else:
ttl = cfg.CONF.auth.token_ttl
if username:
try:
User.get_by_name(username)
except:
user = UserDB(name=username)
User.add_or_update(user)
extra = {'username': username, 'user': user}
LOG.audit('Registered new user "%s".' % (username), extra=extra)
token = uuid.uuid4().hex
expiry = datetime.datetime.utcnow() + datetime.timedelta(seconds=ttl)
expiry = isotime.add_utc_tz(expiry)
token = TokenDB(user=username, token=token, expiry=expiry, metadata=metadata)
Token.add_or_update(token)
username_string = username if username else 'an anonymous user'
token_expire_string = isotime.format(expiry, offset=False)
extra = {'username': username, 'token_expiration': token_expire_string}
LOG.audit('Access granted to "%s" with the token set to expire at "%s".' %
(username_string, token_expire_string), extra=extra)
return token
示例15: test_sort_multiple
def test_sort_multiple(self):
count = 60
base = isotime.add_utc_tz(datetime.datetime(2014, 12, 25, 0, 0, 0))
for i in range(count):
category = 'type1' if i % 2 else 'type2'
timestamp = base + datetime.timedelta(seconds=i)
obj = FakeModelDB(name=uuid.uuid4().hex, timestamp=timestamp, category=category)
self.access.add_or_update(obj)
objs = self.access.query(order_by=['category', 'timestamp'])
self.assertEqual(len(objs), count)
for i in range(count):
category = 'type1' if i < count / 2 else 'type2'
self.assertEqual(objs[i].category, category)
self.assertLess(objs[0].timestamp, objs[(count / 2) - 1].timestamp)
self.assertLess(objs[count / 2].timestamp, objs[(count / 2) - 1].timestamp)
self.assertLess(objs[count / 2].timestamp, objs[count - 1].timestamp)