Merge "Replace deprecated datetime.utcnow()"
This commit is contained in:
commit
57177aebb2
@ -23,7 +23,7 @@ oslo.reports>=1.27.0 # Apache-2.0
|
|||||||
oslo.serialization>=2.25.0 # Apache-2.0
|
oslo.serialization>=2.25.0 # Apache-2.0
|
||||||
oslo.service>=1.30.0 # Apache-2.0
|
oslo.service>=1.30.0 # Apache-2.0
|
||||||
oslo.upgradecheck>=1.3.0 # Apache-2.0
|
oslo.upgradecheck>=1.3.0 # Apache-2.0
|
||||||
oslo.utils>=3.36.0 # Apache-2.0
|
oslo.utils>=7.0.0 # Apache-2.0
|
||||||
oslo.versionedobjects>=1.32.0 # Apache-2.0
|
oslo.versionedobjects>=1.32.0 # Apache-2.0
|
||||||
PasteDeploy>=1.5.2 # MIT
|
PasteDeploy>=1.5.2 # MIT
|
||||||
pbr>=3.1.1 # Apache-2.0
|
pbr>=3.1.1 # Apache-2.0
|
||||||
|
@ -55,9 +55,8 @@ possible to :ref:`develop new implementations <implement_action_plugin>` which
|
|||||||
are dynamically loaded by Watcher at launch time.
|
are dynamically loaded by Watcher at launch time.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import datetime
|
|
||||||
|
|
||||||
from http import HTTPStatus
|
from http import HTTPStatus
|
||||||
|
from oslo_utils import timeutils
|
||||||
import pecan
|
import pecan
|
||||||
from pecan import rest
|
from pecan import rest
|
||||||
import wsme
|
import wsme
|
||||||
@ -194,9 +193,9 @@ class Action(base.APIBase):
|
|||||||
sample = cls(uuid='27e3153e-d5bf-4b7e-b517-fb518e17f34c',
|
sample = cls(uuid='27e3153e-d5bf-4b7e-b517-fb518e17f34c',
|
||||||
description='action description',
|
description='action description',
|
||||||
state='PENDING',
|
state='PENDING',
|
||||||
created_at=datetime.datetime.utcnow(),
|
created_at=timeutils.utcnow(),
|
||||||
deleted_at=None,
|
deleted_at=None,
|
||||||
updated_at=datetime.datetime.utcnow(),
|
updated_at=timeutils.utcnow(),
|
||||||
parents=[])
|
parents=[])
|
||||||
sample._action_plan_uuid = '7ae81bb3-dec3-4289-8d6c-da80bd8001ae'
|
sample._action_plan_uuid = '7ae81bb3-dec3-4289-8d6c-da80bd8001ae'
|
||||||
return cls._convert_with_links(sample, 'http://localhost:9322', expand)
|
return cls._convert_with_links(sample, 'http://localhost:9322', expand)
|
||||||
|
@ -54,10 +54,9 @@ To see the life-cycle and description of
|
|||||||
state machine <action_plan_state_machine>`.
|
state machine <action_plan_state_machine>`.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import datetime
|
|
||||||
|
|
||||||
from http import HTTPStatus
|
from http import HTTPStatus
|
||||||
from oslo_log import log
|
from oslo_log import log
|
||||||
|
from oslo_utils import timeutils
|
||||||
import pecan
|
import pecan
|
||||||
from pecan import rest
|
from pecan import rest
|
||||||
import wsme
|
import wsme
|
||||||
@ -293,9 +292,9 @@ class ActionPlan(base.APIBase):
|
|||||||
def sample(cls, expand=True):
|
def sample(cls, expand=True):
|
||||||
sample = cls(uuid='9ef4d84c-41e8-4418-9220-ce55be0436af',
|
sample = cls(uuid='9ef4d84c-41e8-4418-9220-ce55be0436af',
|
||||||
state='ONGOING',
|
state='ONGOING',
|
||||||
created_at=datetime.datetime.utcnow(),
|
created_at=timeutils.utcnow(),
|
||||||
deleted_at=None,
|
deleted_at=None,
|
||||||
updated_at=datetime.datetime.utcnow())
|
updated_at=timeutils.utcnow())
|
||||||
sample._audit_uuid = 'abcee106-14d3-4515-b744-5a26885cf6f6'
|
sample._audit_uuid = 'abcee106-14d3-4515-b744-5a26885cf6f6'
|
||||||
sample._efficacy_indicators = [{'description': 'Test indicator',
|
sample._efficacy_indicators = [{'description': 'Test indicator',
|
||||||
'name': 'test_indicator',
|
'name': 'test_indicator',
|
||||||
|
@ -33,6 +33,8 @@ import datetime
|
|||||||
from dateutil import tz
|
from dateutil import tz
|
||||||
|
|
||||||
from http import HTTPStatus
|
from http import HTTPStatus
|
||||||
|
from oslo_log import log
|
||||||
|
from oslo_utils import timeutils
|
||||||
import pecan
|
import pecan
|
||||||
from pecan import rest
|
from pecan import rest
|
||||||
import wsme
|
import wsme
|
||||||
@ -40,8 +42,6 @@ from wsme import types as wtypes
|
|||||||
from wsme import utils as wutils
|
from wsme import utils as wutils
|
||||||
import wsmeext.pecan as wsme_pecan
|
import wsmeext.pecan as wsme_pecan
|
||||||
|
|
||||||
from oslo_log import log
|
|
||||||
|
|
||||||
from watcher._i18n import _
|
from watcher._i18n import _
|
||||||
from watcher.api.controllers import base
|
from watcher.api.controllers import base
|
||||||
from watcher.api.controllers import link
|
from watcher.api.controllers import link
|
||||||
@ -171,16 +171,16 @@ class AuditPostType(wtypes.Base):
|
|||||||
strategy = _get_object_by_value(context, objects.Strategy,
|
strategy = _get_object_by_value(context, objects.Strategy,
|
||||||
self.strategy)
|
self.strategy)
|
||||||
self.name = "%s-%s" % (strategy.name,
|
self.name = "%s-%s" % (strategy.name,
|
||||||
datetime.datetime.utcnow().isoformat())
|
timeutils.utcnow().isoformat())
|
||||||
elif self.audit_template_uuid:
|
elif self.audit_template_uuid:
|
||||||
audit_template = objects.AuditTemplate.get(
|
audit_template = objects.AuditTemplate.get(
|
||||||
context, self.audit_template_uuid)
|
context, self.audit_template_uuid)
|
||||||
self.name = "%s-%s" % (audit_template.name,
|
self.name = "%s-%s" % (audit_template.name,
|
||||||
datetime.datetime.utcnow().isoformat())
|
timeutils.utcnow().isoformat())
|
||||||
else:
|
else:
|
||||||
goal = _get_object_by_value(context, objects.Goal, self.goal)
|
goal = _get_object_by_value(context, objects.Goal, self.goal)
|
||||||
self.name = "%s-%s" % (goal.name,
|
self.name = "%s-%s" % (goal.name,
|
||||||
datetime.datetime.utcnow().isoformat())
|
timeutils.utcnow().isoformat())
|
||||||
# No more than 63 characters
|
# No more than 63 characters
|
||||||
if len(self.name) > 63:
|
if len(self.name) > 63:
|
||||||
LOG.warning("Audit: %s length exceeds 63 characters",
|
LOG.warning("Audit: %s length exceeds 63 characters",
|
||||||
@ -424,15 +424,15 @@ class Audit(base.APIBase):
|
|||||||
name='My Audit',
|
name='My Audit',
|
||||||
audit_type='ONESHOT',
|
audit_type='ONESHOT',
|
||||||
state='PENDING',
|
state='PENDING',
|
||||||
created_at=datetime.datetime.utcnow(),
|
created_at=timeutils.utcnow(),
|
||||||
deleted_at=None,
|
deleted_at=None,
|
||||||
updated_at=datetime.datetime.utcnow(),
|
updated_at=timeutils.utcnow(),
|
||||||
interval='7200',
|
interval='7200',
|
||||||
scope=[],
|
scope=[],
|
||||||
auto_trigger=False,
|
auto_trigger=False,
|
||||||
next_run_time=datetime.datetime.utcnow(),
|
next_run_time=timeutils.utcnow(),
|
||||||
start_time=datetime.datetime.utcnow(),
|
start_time=timeutils.utcnow(),
|
||||||
end_time=datetime.datetime.utcnow())
|
end_time=timeutils.utcnow())
|
||||||
|
|
||||||
sample.goal_id = '7ae81bb3-dec3-4289-8d6c-da80bd8001ae'
|
sample.goal_id = '7ae81bb3-dec3-4289-8d6c-da80bd8001ae'
|
||||||
sample.strategy_id = '7ae81bb3-dec3-4289-8d6c-da80bd8001ff'
|
sample.strategy_id = '7ae81bb3-dec3-4289-8d6c-da80bd8001ff'
|
||||||
|
@ -43,9 +43,8 @@ will be launched automatically or will need a manual confirmation from the
|
|||||||
:ref:`Administrator <administrator_definition>`.
|
:ref:`Administrator <administrator_definition>`.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import datetime
|
|
||||||
|
|
||||||
from http import HTTPStatus
|
from http import HTTPStatus
|
||||||
|
from oslo_utils import timeutils
|
||||||
import pecan
|
import pecan
|
||||||
from pecan import rest
|
from pecan import rest
|
||||||
import wsme
|
import wsme
|
||||||
@ -440,9 +439,9 @@ class AuditTemplate(base.APIBase):
|
|||||||
description='Description of my audit template',
|
description='Description of my audit template',
|
||||||
goal_uuid='83e44733-b640-40e2-8d8a-7dd3be7134e6',
|
goal_uuid='83e44733-b640-40e2-8d8a-7dd3be7134e6',
|
||||||
strategy_uuid='367d826e-b6a4-4b70-bc44-c3f6fe1c9986',
|
strategy_uuid='367d826e-b6a4-4b70-bc44-c3f6fe1c9986',
|
||||||
created_at=datetime.datetime.utcnow(),
|
created_at=timeutils.utcnow(),
|
||||||
deleted_at=None,
|
deleted_at=None,
|
||||||
updated_at=datetime.datetime.utcnow(),
|
updated_at=timeutils.utcnow(),
|
||||||
scope=[],)
|
scope=[],)
|
||||||
return cls._convert_with_links(sample, 'http://localhost:9322', expand)
|
return cls._convert_with_links(sample, 'http://localhost:9322', expand)
|
||||||
|
|
||||||
|
@ -26,6 +26,7 @@ from oslo_reports import guru_meditation_report as gmr
|
|||||||
from oslo_reports import opts as gmr_opts
|
from oslo_reports import opts as gmr_opts
|
||||||
from oslo_service import service
|
from oslo_service import service
|
||||||
from oslo_service import wsgi
|
from oslo_service import wsgi
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher._i18n import _
|
from watcher._i18n import _
|
||||||
from watcher.api import app
|
from watcher.api import app
|
||||||
@ -120,7 +121,7 @@ class ServiceHeartbeat(scheduling.BackgroundSchedulerService):
|
|||||||
'host': host})
|
'host': host})
|
||||||
if watcher_list:
|
if watcher_list:
|
||||||
watcher_service = watcher_list[0]
|
watcher_service = watcher_list[0]
|
||||||
watcher_service.last_seen_up = datetime.datetime.utcnow()
|
watcher_service.last_seen_up = timeutils.utcnow()
|
||||||
watcher_service.save()
|
watcher_service.save()
|
||||||
else:
|
else:
|
||||||
watcher_service = objects.Service(self.context)
|
watcher_service = objects.Service(self.context)
|
||||||
|
@ -19,9 +19,10 @@
|
|||||||
|
|
||||||
|
|
||||||
import datetime
|
import datetime
|
||||||
from dateutil import tz
|
|
||||||
|
|
||||||
from croniter import croniter
|
from croniter import croniter
|
||||||
|
from dateutil import tz
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher.common import context
|
from watcher.common import context
|
||||||
from watcher.common import scheduling
|
from watcher.common import scheduling
|
||||||
@ -97,7 +98,7 @@ class ContinuousAuditHandler(base.AuditHandler):
|
|||||||
@staticmethod
|
@staticmethod
|
||||||
def _next_cron_time(audit):
|
def _next_cron_time(audit):
|
||||||
if utils.is_cron_like(audit.interval):
|
if utils.is_cron_like(audit.interval):
|
||||||
return croniter(audit.interval, datetime.datetime.utcnow()
|
return croniter(audit.interval, timeutils.utcnow()
|
||||||
).get_next(datetime.datetime)
|
).get_next(datetime.datetime)
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
@ -111,7 +112,7 @@ class ContinuousAuditHandler(base.AuditHandler):
|
|||||||
finally:
|
finally:
|
||||||
if utils.is_int_like(audit.interval):
|
if utils.is_int_like(audit.interval):
|
||||||
audit.next_run_time = (
|
audit.next_run_time = (
|
||||||
datetime.datetime.utcnow() +
|
timeutils.utcnow() +
|
||||||
datetime.timedelta(seconds=int(audit.interval)))
|
datetime.timedelta(seconds=int(audit.interval)))
|
||||||
else:
|
else:
|
||||||
audit.next_run_time = self._next_cron_time(audit)
|
audit.next_run_time = self._next_cron_time(audit)
|
||||||
@ -129,7 +130,7 @@ class ContinuousAuditHandler(base.AuditHandler):
|
|||||||
**trigger_args)
|
**trigger_args)
|
||||||
|
|
||||||
def check_audit_expired(self, audit):
|
def check_audit_expired(self, audit):
|
||||||
current = datetime.datetime.utcnow()
|
current = timeutils.utcnow()
|
||||||
# Note: if audit still didn't get into the timeframe,
|
# Note: if audit still didn't get into the timeframe,
|
||||||
# skip it
|
# skip it
|
||||||
if audit.start_time and audit.start_time > current:
|
if audit.start_time and audit.start_time > current:
|
||||||
@ -196,7 +197,7 @@ class ContinuousAuditHandler(base.AuditHandler):
|
|||||||
# to restore it after shutdown
|
# to restore it after shutdown
|
||||||
if audit.next_run_time is not None:
|
if audit.next_run_time is not None:
|
||||||
old_run_time = audit.next_run_time
|
old_run_time = audit.next_run_time
|
||||||
current = datetime.datetime.utcnow()
|
current = timeutils.utcnow()
|
||||||
if old_run_time < current:
|
if old_run_time < current:
|
||||||
delta = datetime.timedelta(
|
delta = datetime.timedelta(
|
||||||
seconds=(int(audit.interval) - (
|
seconds=(int(audit.interval) - (
|
||||||
@ -206,7 +207,7 @@ class ContinuousAuditHandler(base.AuditHandler):
|
|||||||
next_run_time = audit.next_run_time
|
next_run_time = audit.next_run_time
|
||||||
# if audit is new one
|
# if audit is new one
|
||||||
else:
|
else:
|
||||||
next_run_time = datetime.datetime.utcnow()
|
next_run_time = timeutils.utcnow()
|
||||||
self._add_job('interval', audit, audit_context,
|
self._add_job('interval', audit, audit_context,
|
||||||
seconds=int(audit.interval),
|
seconds=int(audit.interval),
|
||||||
next_run_time=next_run_time)
|
next_run_time=next_run_time)
|
||||||
|
@ -158,7 +158,7 @@ class CeilometerHelper(base.DataSourceBase):
|
|||||||
def statistic_aggregation(self, resource=None, resource_type=None,
|
def statistic_aggregation(self, resource=None, resource_type=None,
|
||||||
meter_name=None, period=300, granularity=300,
|
meter_name=None, period=300, granularity=300,
|
||||||
aggregate='mean'):
|
aggregate='mean'):
|
||||||
end_time = datetime.datetime.utcnow()
|
end_time = timeutils.utcnow()
|
||||||
start_time = end_time - datetime.timedelta(seconds=int(period))
|
start_time = end_time - datetime.timedelta(seconds=int(period))
|
||||||
|
|
||||||
meter = self._get_meter(meter_name)
|
meter = self._get_meter(meter_name)
|
||||||
|
@ -16,12 +16,12 @@
|
|||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
from datetime import datetime
|
|
||||||
from datetime import timedelta
|
from datetime import timedelta
|
||||||
|
|
||||||
from gnocchiclient import exceptions as gnc_exc
|
from gnocchiclient import exceptions as gnc_exc
|
||||||
from oslo_config import cfg
|
from oslo_config import cfg
|
||||||
from oslo_log import log
|
from oslo_log import log
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher.common import clients
|
from watcher.common import clients
|
||||||
from watcher.decision_engine.datasources import base
|
from watcher.decision_engine.datasources import base
|
||||||
@ -69,7 +69,7 @@ class GnocchiHelper(base.DataSourceBase):
|
|||||||
def statistic_aggregation(self, resource=None, resource_type=None,
|
def statistic_aggregation(self, resource=None, resource_type=None,
|
||||||
meter_name=None, period=300, aggregate='mean',
|
meter_name=None, period=300, aggregate='mean',
|
||||||
granularity=300):
|
granularity=300):
|
||||||
stop_time = datetime.utcnow()
|
stop_time = timeutils.utcnow()
|
||||||
start_time = stop_time - timedelta(seconds=(int(period)))
|
start_time = stop_time - timedelta(seconds=(int(period)))
|
||||||
|
|
||||||
meter = self._get_meter(meter_name)
|
meter = self._get_meter(meter_name)
|
||||||
|
@ -19,6 +19,7 @@
|
|||||||
import datetime
|
import datetime
|
||||||
|
|
||||||
from monascaclient import exc
|
from monascaclient import exc
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher.common import clients
|
from watcher.common import clients
|
||||||
from watcher.decision_engine.datasources import base
|
from watcher.decision_engine.datasources import base
|
||||||
@ -58,8 +59,7 @@ class MonascaHelper(base.DataSourceBase):
|
|||||||
period = int(datetime.timedelta(hours=3).total_seconds())
|
period = int(datetime.timedelta(hours=3).total_seconds())
|
||||||
if not start_time:
|
if not start_time:
|
||||||
start_time = (
|
start_time = (
|
||||||
datetime.datetime.utcnow() -
|
timeutils.utcnow() - datetime.timedelta(seconds=period))
|
||||||
datetime.timedelta(seconds=period))
|
|
||||||
|
|
||||||
start_timestamp = None if not start_time else start_time.isoformat()
|
start_timestamp = None if not start_time else start_time.isoformat()
|
||||||
end_timestamp = None if not end_time else end_time.isoformat()
|
end_timestamp = None if not end_time else end_time.isoformat()
|
||||||
@ -86,7 +86,7 @@ class MonascaHelper(base.DataSourceBase):
|
|||||||
def statistic_aggregation(self, resource=None, resource_type=None,
|
def statistic_aggregation(self, resource=None, resource_type=None,
|
||||||
meter_name=None, period=300, aggregate='mean',
|
meter_name=None, period=300, aggregate='mean',
|
||||||
granularity=300):
|
granularity=300):
|
||||||
stop_time = datetime.datetime.utcnow()
|
stop_time = timeutils.utcnow()
|
||||||
start_time = stop_time - datetime.timedelta(seconds=(int(period)))
|
start_time = stop_time - datetime.timedelta(seconds=(int(period)))
|
||||||
|
|
||||||
meter = self._get_meter(meter_name)
|
meter = self._get_meter(meter_name)
|
||||||
|
@ -73,6 +73,8 @@ state may be one of the following:
|
|||||||
"""
|
"""
|
||||||
import datetime
|
import datetime
|
||||||
|
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher.common import exception
|
from watcher.common import exception
|
||||||
from watcher.common import utils
|
from watcher.common import utils
|
||||||
from watcher import conf
|
from watcher import conf
|
||||||
@ -332,7 +334,7 @@ class StateManager(object):
|
|||||||
def check_expired(self, context):
|
def check_expired(self, context):
|
||||||
action_plan_expiry = (
|
action_plan_expiry = (
|
||||||
CONF.watcher_decision_engine.action_plan_expiry)
|
CONF.watcher_decision_engine.action_plan_expiry)
|
||||||
date_created = datetime.datetime.utcnow() - datetime.timedelta(
|
date_created = timeutils.utcnow() - datetime.timedelta(
|
||||||
hours=action_plan_expiry)
|
hours=action_plan_expiry)
|
||||||
filters = {'state__eq': State.RECOMMENDED,
|
filters = {'state__eq': State.RECOMMENDED,
|
||||||
'created_at__lt': date_created}
|
'created_at__lt': date_created}
|
||||||
|
@ -12,11 +12,12 @@
|
|||||||
# License for the specific language governing permissions and limitations
|
# License for the specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
from apscheduler.schedulers import background
|
|
||||||
import datetime
|
|
||||||
import freezegun
|
|
||||||
from unittest import mock
|
from unittest import mock
|
||||||
|
|
||||||
|
from apscheduler.schedulers import background
|
||||||
|
import freezegun
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher.api import scheduling
|
from watcher.api import scheduling
|
||||||
from watcher.notifications import service
|
from watcher.notifications import service
|
||||||
from watcher import objects
|
from watcher import objects
|
||||||
@ -41,7 +42,7 @@ class TestSchedulingServiceFunctions(db_base.DbTestCase):
|
|||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(TestSchedulingServiceFunctions, self).setUp()
|
super(TestSchedulingServiceFunctions, self).setUp()
|
||||||
fake_service = utils.get_test_service(
|
fake_service = utils.get_test_service(
|
||||||
created_at=datetime.datetime.utcnow())
|
created_at=timeutils.utcnow())
|
||||||
self.fake_service = objects.Service(**fake_service)
|
self.fake_service = objects.Service(**fake_service)
|
||||||
|
|
||||||
@mock.patch.object(scheduling.APISchedulingService, 'get_service_status')
|
@mock.patch.object(scheduling.APISchedulingService, 'get_service_status')
|
||||||
|
@ -16,7 +16,9 @@ Utils for testing the API service.
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
import datetime
|
import datetime
|
||||||
|
|
||||||
from oslo_serialization import jsonutils
|
from oslo_serialization import jsonutils
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher.api.controllers.v1 import action as action_ctrl
|
from watcher.api.controllers.v1 import action as action_ctrl
|
||||||
from watcher.api.controllers.v1 import action_plan as action_plan_ctrl
|
from watcher.api.controllers.v1 import action_plan as action_plan_ctrl
|
||||||
@ -65,7 +67,7 @@ class FakeMemcache(object):
|
|||||||
self.token_expiration = None
|
self.token_expiration = None
|
||||||
|
|
||||||
def get(self, key):
|
def get(self, key):
|
||||||
dt = datetime.datetime.utcnow() + datetime.timedelta(minutes=5)
|
dt = timeutils.utcnow() + datetime.timedelta(minutes=5)
|
||||||
return jsonutils.dumps((self._cache.get(key), dt.isoformat()))
|
return jsonutils.dumps((self._cache.get(key), dt.isoformat()))
|
||||||
|
|
||||||
def set(self, key, value, time=0, min_compress_len=0):
|
def set(self, key, value, time=0, min_compress_len=0):
|
||||||
|
@ -18,6 +18,7 @@ import datetime
|
|||||||
from unittest import mock
|
from unittest import mock
|
||||||
|
|
||||||
from oslo_config import cfg
|
from oslo_config import cfg
|
||||||
|
from oslo_utils import timeutils
|
||||||
from oslo_utils import uuidutils
|
from oslo_utils import uuidutils
|
||||||
|
|
||||||
from apscheduler import job
|
from apscheduler import job
|
||||||
@ -486,7 +487,7 @@ class TestContinuousAuditHandler(base.DbTestCase):
|
|||||||
self.assertFalse(is_inactive)
|
self.assertFalse(is_inactive)
|
||||||
|
|
||||||
def test_check_audit_expired(self):
|
def test_check_audit_expired(self):
|
||||||
current = datetime.datetime.utcnow()
|
current = timeutils.utcnow()
|
||||||
|
|
||||||
# start_time and end_time are None
|
# start_time and end_time are None
|
||||||
audit_handler = continuous.ContinuousAuditHandler()
|
audit_handler = continuous.ContinuousAuditHandler()
|
||||||
|
@ -14,11 +14,11 @@
|
|||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
import datetime
|
|
||||||
import os
|
import os
|
||||||
from unittest import mock
|
from unittest import mock
|
||||||
|
|
||||||
from oslo_serialization import jsonutils
|
from oslo_serialization import jsonutils
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher.common import cinder_helper
|
from watcher.common import cinder_helper
|
||||||
from watcher.common import context
|
from watcher.common import context
|
||||||
@ -64,7 +64,7 @@ class TestReceiveCinderNotifications(NotificationTestCase):
|
|||||||
m_get_service_list = p_get_service_list.start()
|
m_get_service_list = p_get_service_list.start()
|
||||||
m_update_service = p_update_service.start()
|
m_update_service = p_update_service.start()
|
||||||
fake_service = utils.get_test_service(
|
fake_service = utils.get_test_service(
|
||||||
created_at=datetime.datetime.utcnow())
|
created_at=timeutils.utcnow())
|
||||||
|
|
||||||
m_get_service_list.return_value = [fake_service]
|
m_get_service_list.return_value = [fake_service]
|
||||||
m_update_service.return_value = fake_service.copy()
|
m_update_service.return_value = fake_service.copy()
|
||||||
|
@ -14,11 +14,11 @@
|
|||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
import datetime
|
|
||||||
from unittest import mock
|
from unittest import mock
|
||||||
|
|
||||||
import freezegun
|
import freezegun
|
||||||
import oslo_messaging as om
|
import oslo_messaging as om
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher.common import rpc
|
from watcher.common import rpc
|
||||||
from watcher import notifications
|
from watcher import notifications
|
||||||
@ -45,7 +45,7 @@ class TestActionPlanNotification(base.DbTestCase):
|
|||||||
|
|
||||||
def test_service_failed(self):
|
def test_service_failed(self):
|
||||||
service = utils.get_test_service(mock.Mock(),
|
service = utils.get_test_service(mock.Mock(),
|
||||||
created_at=datetime.datetime.utcnow())
|
created_at=timeutils.utcnow())
|
||||||
state = w_service.ServiceStatus.FAILED
|
state = w_service.ServiceStatus.FAILED
|
||||||
notifications.service.send_service_update(mock.MagicMock(),
|
notifications.service.send_service_update(mock.MagicMock(),
|
||||||
service,
|
service,
|
||||||
|
@ -13,10 +13,10 @@
|
|||||||
# License for the specific language governing permissions and limitations
|
# License for the specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
import datetime
|
|
||||||
from unittest import mock
|
from unittest import mock
|
||||||
|
|
||||||
import iso8601
|
import iso8601
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher.common import exception
|
from watcher.common import exception
|
||||||
from watcher.common import utils as c_utils
|
from watcher.common import utils as c_utils
|
||||||
@ -123,7 +123,7 @@ class TestActionObject(base.DbTestCase):
|
|||||||
uuid=c_utils.generate_uuid())
|
uuid=c_utils.generate_uuid())
|
||||||
mock_get_strategy.return_value = mock.PropertyMock(
|
mock_get_strategy.return_value = mock.PropertyMock(
|
||||||
uuid=c_utils.generate_uuid())
|
uuid=c_utils.generate_uuid())
|
||||||
fake_saved_action['updated_at'] = datetime.datetime.utcnow()
|
fake_saved_action['updated_at'] = timeutils.utcnow()
|
||||||
mock_update_action.return_value = fake_saved_action
|
mock_update_action.return_value = fake_saved_action
|
||||||
uuid = self.fake_action['uuid']
|
uuid = self.fake_action['uuid']
|
||||||
action = objects.Action.get_by_uuid(
|
action = objects.Action.get_by_uuid(
|
||||||
@ -172,7 +172,7 @@ class TestCreateDeleteActionObject(base.DbTestCase):
|
|||||||
self.fake_audit = utils.create_test_audit()
|
self.fake_audit = utils.create_test_audit()
|
||||||
self.fake_action_plan = utils.create_test_action_plan()
|
self.fake_action_plan = utils.create_test_action_plan()
|
||||||
self.fake_action = utils.get_test_action(
|
self.fake_action = utils.get_test_action(
|
||||||
created_at=datetime.datetime.utcnow())
|
created_at=timeutils.utcnow())
|
||||||
|
|
||||||
@mock.patch.object(db_api.Connection, 'create_action')
|
@mock.patch.object(db_api.Connection, 'create_action')
|
||||||
def test_create(self, mock_create_action):
|
def test_create(self, mock_create_action):
|
||||||
@ -195,7 +195,7 @@ class TestCreateDeleteActionObject(base.DbTestCase):
|
|||||||
mock_send_update, mock_send_delete):
|
mock_send_update, mock_send_delete):
|
||||||
mock_get_action.return_value = self.fake_action
|
mock_get_action.return_value = self.fake_action
|
||||||
fake_deleted_action = self.fake_action.copy()
|
fake_deleted_action = self.fake_action.copy()
|
||||||
fake_deleted_action['deleted_at'] = datetime.datetime.utcnow()
|
fake_deleted_action['deleted_at'] = timeutils.utcnow()
|
||||||
mock_soft_delete_action.return_value = fake_deleted_action
|
mock_soft_delete_action.return_value = fake_deleted_action
|
||||||
mock_update_action.return_value = fake_deleted_action
|
mock_update_action.return_value = fake_deleted_action
|
||||||
|
|
||||||
|
@ -14,10 +14,10 @@
|
|||||||
# License for the specific language governing permissions and limitations
|
# License for the specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
import datetime
|
|
||||||
from unittest import mock
|
from unittest import mock
|
||||||
|
|
||||||
import iso8601
|
import iso8601
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher.db.sqlalchemy import api as db_api
|
from watcher.db.sqlalchemy import api as db_api
|
||||||
from watcher import objects
|
from watcher import objects
|
||||||
@ -30,7 +30,7 @@ class TestActionDescriptionObject(base.DbTestCase):
|
|||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(TestActionDescriptionObject, self).setUp()
|
super(TestActionDescriptionObject, self).setUp()
|
||||||
self.fake_action_desc = utils.get_test_action_desc(
|
self.fake_action_desc = utils.get_test_action_desc(
|
||||||
created_at=datetime.datetime.utcnow())
|
created_at=timeutils.utcnow())
|
||||||
|
|
||||||
@mock.patch.object(db_api.Connection, 'get_action_description_by_id')
|
@mock.patch.object(db_api.Connection, 'get_action_description_by_id')
|
||||||
def test_get_by_id(self, mock_get_action_desc):
|
def test_get_by_id(self, mock_get_action_desc):
|
||||||
@ -70,7 +70,7 @@ class TestActionDescriptionObject(base.DbTestCase):
|
|||||||
def test_save(self, mock_get_action_desc, mock_update_action_desc):
|
def test_save(self, mock_get_action_desc, mock_update_action_desc):
|
||||||
mock_get_action_desc.return_value = self.fake_action_desc
|
mock_get_action_desc.return_value = self.fake_action_desc
|
||||||
fake_saved_action_desc = self.fake_action_desc.copy()
|
fake_saved_action_desc = self.fake_action_desc.copy()
|
||||||
fake_saved_action_desc['updated_at'] = datetime.datetime.utcnow()
|
fake_saved_action_desc['updated_at'] = timeutils.utcnow()
|
||||||
mock_update_action_desc.return_value = fake_saved_action_desc
|
mock_update_action_desc.return_value = fake_saved_action_desc
|
||||||
_id = self.fake_action_desc['id']
|
_id = self.fake_action_desc['id']
|
||||||
action_desc = objects.ActionDescription.get(self.context, _id)
|
action_desc = objects.ActionDescription.get(self.context, _id)
|
||||||
@ -102,7 +102,7 @@ class TestActionDescriptionObject(base.DbTestCase):
|
|||||||
def test_soft_delete(self, mock_get_action_desc, mock_soft_delete):
|
def test_soft_delete(self, mock_get_action_desc, mock_soft_delete):
|
||||||
mock_get_action_desc.return_value = self.fake_action_desc
|
mock_get_action_desc.return_value = self.fake_action_desc
|
||||||
fake_deleted_action_desc = self.fake_action_desc.copy()
|
fake_deleted_action_desc = self.fake_action_desc.copy()
|
||||||
fake_deleted_action_desc['deleted_at'] = datetime.datetime.utcnow()
|
fake_deleted_action_desc['deleted_at'] = timeutils.utcnow()
|
||||||
mock_soft_delete.return_value = fake_deleted_action_desc
|
mock_soft_delete.return_value = fake_deleted_action_desc
|
||||||
|
|
||||||
expected_action_desc = fake_deleted_action_desc.copy()
|
expected_action_desc = fake_deleted_action_desc.copy()
|
||||||
|
@ -13,10 +13,10 @@
|
|||||||
# License for the specific language governing permissions and limitations
|
# License for the specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
import datetime
|
|
||||||
from unittest import mock
|
from unittest import mock
|
||||||
|
|
||||||
import iso8601
|
import iso8601
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher.common import exception
|
from watcher.common import exception
|
||||||
from watcher.common import utils as common_utils
|
from watcher.common import utils as common_utils
|
||||||
@ -39,19 +39,19 @@ class TestActionPlanObject(base.DbTestCase):
|
|||||||
('non_eager', dict(
|
('non_eager', dict(
|
||||||
eager=False,
|
eager=False,
|
||||||
fake_action_plan=utils.get_test_action_plan(
|
fake_action_plan=utils.get_test_action_plan(
|
||||||
created_at=datetime.datetime.utcnow(),
|
created_at=timeutils.utcnow(),
|
||||||
audit_id=audit_id,
|
audit_id=audit_id,
|
||||||
strategy_id=strategy_id))),
|
strategy_id=strategy_id))),
|
||||||
('eager_with_non_eager_load', dict(
|
('eager_with_non_eager_load', dict(
|
||||||
eager=True,
|
eager=True,
|
||||||
fake_action_plan=utils.get_test_action_plan(
|
fake_action_plan=utils.get_test_action_plan(
|
||||||
created_at=datetime.datetime.utcnow(),
|
created_at=timeutils.utcnow(),
|
||||||
audit_id=audit_id,
|
audit_id=audit_id,
|
||||||
strategy_id=strategy_id))),
|
strategy_id=strategy_id))),
|
||||||
('eager_with_eager_load', dict(
|
('eager_with_eager_load', dict(
|
||||||
eager=True,
|
eager=True,
|
||||||
fake_action_plan=utils.get_test_action_plan(
|
fake_action_plan=utils.get_test_action_plan(
|
||||||
created_at=datetime.datetime.utcnow(),
|
created_at=timeutils.utcnow(),
|
||||||
strategy_id=strategy_id,
|
strategy_id=strategy_id,
|
||||||
strategy=utils.get_test_strategy(id=strategy_id),
|
strategy=utils.get_test_strategy(id=strategy_id),
|
||||||
audit_id=audit_id,
|
audit_id=audit_id,
|
||||||
@ -132,7 +132,7 @@ class TestActionPlanObject(base.DbTestCase):
|
|||||||
mock_get_action_plan.return_value = self.fake_action_plan
|
mock_get_action_plan.return_value = self.fake_action_plan
|
||||||
fake_saved_action_plan = self.fake_action_plan.copy()
|
fake_saved_action_plan = self.fake_action_plan.copy()
|
||||||
fake_saved_action_plan['state'] = objects.action_plan.State.SUCCEEDED
|
fake_saved_action_plan['state'] = objects.action_plan.State.SUCCEEDED
|
||||||
fake_saved_action_plan['updated_at'] = datetime.datetime.utcnow()
|
fake_saved_action_plan['updated_at'] = timeutils.utcnow()
|
||||||
|
|
||||||
mock_update_action_plan.return_value = fake_saved_action_plan
|
mock_update_action_plan.return_value = fake_saved_action_plan
|
||||||
|
|
||||||
@ -197,7 +197,7 @@ class TestCreateDeleteActionPlanObject(base.DbTestCase):
|
|||||||
self.fake_strategy = utils.create_test_strategy(name="DUMMY")
|
self.fake_strategy = utils.create_test_strategy(name="DUMMY")
|
||||||
self.fake_audit = utils.create_test_audit()
|
self.fake_audit = utils.create_test_audit()
|
||||||
self.fake_action_plan = utils.get_test_action_plan(
|
self.fake_action_plan = utils.get_test_action_plan(
|
||||||
created_at=datetime.datetime.utcnow())
|
created_at=timeutils.utcnow())
|
||||||
|
|
||||||
@mock.patch.object(db_api.Connection, 'create_action_plan')
|
@mock.patch.object(db_api.Connection, 'create_action_plan')
|
||||||
def test_create(self, mock_create_action_plan):
|
def test_create(self, mock_create_action_plan):
|
||||||
@ -234,7 +234,7 @@ class TestCreateDeleteActionPlanObject(base.DbTestCase):
|
|||||||
|
|
||||||
m_get_action_plan.return_value = self.fake_action_plan
|
m_get_action_plan.return_value = self.fake_action_plan
|
||||||
fake_deleted_action_plan = self.fake_action_plan.copy()
|
fake_deleted_action_plan = self.fake_action_plan.copy()
|
||||||
fake_deleted_action_plan['deleted_at'] = datetime.datetime.utcnow()
|
fake_deleted_action_plan['deleted_at'] = timeutils.utcnow()
|
||||||
m_update_action_plan.return_value = fake_deleted_action_plan
|
m_update_action_plan.return_value = fake_deleted_action_plan
|
||||||
m_soft_delete_action_plan.return_value = fake_deleted_action_plan
|
m_soft_delete_action_plan.return_value = fake_deleted_action_plan
|
||||||
expected_action_plan = fake_deleted_action_plan.copy()
|
expected_action_plan = fake_deleted_action_plan.copy()
|
||||||
|
@ -13,10 +13,10 @@
|
|||||||
# License for the specific language governing permissions and limitations
|
# License for the specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
import datetime
|
|
||||||
from unittest import mock
|
from unittest import mock
|
||||||
|
|
||||||
import iso8601
|
import iso8601
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher.common import exception
|
from watcher.common import exception
|
||||||
from watcher.common import rpc
|
from watcher.common import rpc
|
||||||
@ -40,17 +40,17 @@ class TestAuditObject(base.DbTestCase):
|
|||||||
('non_eager', dict(
|
('non_eager', dict(
|
||||||
eager=False,
|
eager=False,
|
||||||
fake_audit=utils.get_test_audit(
|
fake_audit=utils.get_test_audit(
|
||||||
created_at=datetime.datetime.utcnow(),
|
created_at=timeutils.utcnow(),
|
||||||
goal_id=goal_id))),
|
goal_id=goal_id))),
|
||||||
('eager_with_non_eager_load', dict(
|
('eager_with_non_eager_load', dict(
|
||||||
eager=True,
|
eager=True,
|
||||||
fake_audit=utils.get_test_audit(
|
fake_audit=utils.get_test_audit(
|
||||||
created_at=datetime.datetime.utcnow(),
|
created_at=timeutils.utcnow(),
|
||||||
goal_id=goal_id))),
|
goal_id=goal_id))),
|
||||||
('eager_with_eager_load', dict(
|
('eager_with_eager_load', dict(
|
||||||
eager=True,
|
eager=True,
|
||||||
fake_audit=utils.get_test_audit(
|
fake_audit=utils.get_test_audit(
|
||||||
created_at=datetime.datetime.utcnow(),
|
created_at=timeutils.utcnow(),
|
||||||
goal_id=goal_id, goal=goal_data))),
|
goal_id=goal_id, goal=goal_data))),
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -125,7 +125,7 @@ class TestAuditObject(base.DbTestCase):
|
|||||||
mock_get_audit.return_value = self.fake_audit
|
mock_get_audit.return_value = self.fake_audit
|
||||||
fake_saved_audit = self.fake_audit.copy()
|
fake_saved_audit = self.fake_audit.copy()
|
||||||
fake_saved_audit['state'] = objects.audit.State.SUCCEEDED
|
fake_saved_audit['state'] = objects.audit.State.SUCCEEDED
|
||||||
fake_saved_audit['updated_at'] = datetime.datetime.utcnow()
|
fake_saved_audit['updated_at'] = timeutils.utcnow()
|
||||||
mock_update_audit.return_value = fake_saved_audit
|
mock_update_audit.return_value = fake_saved_audit
|
||||||
|
|
||||||
expected_audit = fake_saved_audit.copy()
|
expected_audit = fake_saved_audit.copy()
|
||||||
@ -184,7 +184,7 @@ class TestCreateDeleteAuditObject(base.DbTestCase):
|
|||||||
self.goal_id = 1
|
self.goal_id = 1
|
||||||
self.goal = utils.create_test_goal(id=self.goal_id, name="DUMMY")
|
self.goal = utils.create_test_goal(id=self.goal_id, name="DUMMY")
|
||||||
self.fake_audit = utils.get_test_audit(
|
self.fake_audit = utils.get_test_audit(
|
||||||
goal_id=self.goal_id, created_at=datetime.datetime.utcnow())
|
goal_id=self.goal_id, created_at=timeutils.utcnow())
|
||||||
|
|
||||||
@mock.patch.object(db_api.Connection, 'create_audit')
|
@mock.patch.object(db_api.Connection, 'create_audit')
|
||||||
def test_create(self, mock_create_audit):
|
def test_create(self, mock_create_audit):
|
||||||
@ -204,7 +204,7 @@ class TestCreateDeleteAuditObject(base.DbTestCase):
|
|||||||
mock_soft_delete_audit, mock_update_audit):
|
mock_soft_delete_audit, mock_update_audit):
|
||||||
mock_get_audit.return_value = self.fake_audit
|
mock_get_audit.return_value = self.fake_audit
|
||||||
fake_deleted_audit = self.fake_audit.copy()
|
fake_deleted_audit = self.fake_audit.copy()
|
||||||
fake_deleted_audit['deleted_at'] = datetime.datetime.utcnow()
|
fake_deleted_audit['deleted_at'] = timeutils.utcnow()
|
||||||
mock_soft_delete_audit.return_value = fake_deleted_audit
|
mock_soft_delete_audit.return_value = fake_deleted_audit
|
||||||
mock_update_audit.return_value = fake_deleted_audit
|
mock_update_audit.return_value = fake_deleted_audit
|
||||||
|
|
||||||
@ -305,7 +305,7 @@ class TestAuditObjectSendNotifications(base.DbTestCase):
|
|||||||
strategy=self.fake_strategy.as_dict())
|
strategy=self.fake_strategy.as_dict())
|
||||||
m_get_audit.return_value = fake_audit
|
m_get_audit.return_value = fake_audit
|
||||||
fake_deleted_audit = self.fake_audit.copy()
|
fake_deleted_audit = self.fake_audit.copy()
|
||||||
fake_deleted_audit['deleted_at'] = datetime.datetime.utcnow()
|
fake_deleted_audit['deleted_at'] = timeutils.utcnow()
|
||||||
expected_audit = fake_deleted_audit.copy()
|
expected_audit = fake_deleted_audit.copy()
|
||||||
expected_audit['deleted_at'] = expected_audit['deleted_at'].replace(
|
expected_audit['deleted_at'] = expected_audit['deleted_at'].replace(
|
||||||
tzinfo=iso8601.UTC)
|
tzinfo=iso8601.UTC)
|
||||||
|
@ -13,10 +13,10 @@
|
|||||||
# License for the specific language governing permissions and limitations
|
# License for the specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
import datetime
|
|
||||||
from unittest import mock
|
from unittest import mock
|
||||||
|
|
||||||
import iso8601
|
import iso8601
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher.common import exception
|
from watcher.common import exception
|
||||||
from watcher.common import utils as w_utils
|
from watcher.common import utils as w_utils
|
||||||
@ -37,17 +37,17 @@ class TestAuditTemplateObject(base.DbTestCase):
|
|||||||
('non_eager', dict(
|
('non_eager', dict(
|
||||||
eager=False,
|
eager=False,
|
||||||
fake_audit_template=utils.get_test_audit_template(
|
fake_audit_template=utils.get_test_audit_template(
|
||||||
created_at=datetime.datetime.utcnow(),
|
created_at=timeutils.utcnow(),
|
||||||
goal_id=goal_id))),
|
goal_id=goal_id))),
|
||||||
('eager_with_non_eager_load', dict(
|
('eager_with_non_eager_load', dict(
|
||||||
eager=True,
|
eager=True,
|
||||||
fake_audit_template=utils.get_test_audit_template(
|
fake_audit_template=utils.get_test_audit_template(
|
||||||
created_at=datetime.datetime.utcnow(),
|
created_at=timeutils.utcnow(),
|
||||||
goal_id=goal_id))),
|
goal_id=goal_id))),
|
||||||
('eager_with_eager_load', dict(
|
('eager_with_eager_load', dict(
|
||||||
eager=True,
|
eager=True,
|
||||||
fake_audit_template=utils.get_test_audit_template(
|
fake_audit_template=utils.get_test_audit_template(
|
||||||
created_at=datetime.datetime.utcnow(),
|
created_at=timeutils.utcnow(),
|
||||||
goal_id=goal_id, goal=goal_data))),
|
goal_id=goal_id, goal=goal_data))),
|
||||||
]
|
]
|
||||||
|
|
||||||
@ -127,7 +127,7 @@ class TestAuditTemplateObject(base.DbTestCase):
|
|||||||
def test_save(self, mock_get_audit_template, mock_update_audit_template):
|
def test_save(self, mock_get_audit_template, mock_update_audit_template):
|
||||||
mock_get_audit_template.return_value = self.fake_audit_template
|
mock_get_audit_template.return_value = self.fake_audit_template
|
||||||
fake_saved_audit_template = self.fake_audit_template.copy()
|
fake_saved_audit_template = self.fake_audit_template.copy()
|
||||||
fake_saved_audit_template['updated_at'] = datetime.datetime.utcnow()
|
fake_saved_audit_template['updated_at'] = timeutils.utcnow()
|
||||||
mock_update_audit_template.return_value = fake_saved_audit_template
|
mock_update_audit_template.return_value = fake_saved_audit_template
|
||||||
uuid = self.fake_audit_template['uuid']
|
uuid = self.fake_audit_template['uuid']
|
||||||
audit_template = objects.AuditTemplate.get_by_uuid(
|
audit_template = objects.AuditTemplate.get_by_uuid(
|
||||||
@ -165,7 +165,7 @@ class TestCreateDeleteAuditTemplateObject(base.DbTestCase):
|
|||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(TestCreateDeleteAuditTemplateObject, self).setUp()
|
super(TestCreateDeleteAuditTemplateObject, self).setUp()
|
||||||
self.fake_audit_template = utils.get_test_audit_template(
|
self.fake_audit_template = utils.get_test_audit_template(
|
||||||
created_at=datetime.datetime.utcnow())
|
created_at=timeutils.utcnow())
|
||||||
|
|
||||||
@mock.patch.object(db_api.Connection, 'create_audit_template')
|
@mock.patch.object(db_api.Connection, 'create_audit_template')
|
||||||
def test_create(self, mock_create_audit_template):
|
def test_create(self, mock_create_audit_template):
|
||||||
@ -188,7 +188,7 @@ class TestCreateDeleteAuditTemplateObject(base.DbTestCase):
|
|||||||
m_soft_delete_audit_template):
|
m_soft_delete_audit_template):
|
||||||
m_get_audit_template.return_value = self.fake_audit_template
|
m_get_audit_template.return_value = self.fake_audit_template
|
||||||
fake_deleted_audit_template = self.fake_audit_template.copy()
|
fake_deleted_audit_template = self.fake_audit_template.copy()
|
||||||
fake_deleted_audit_template['deleted_at'] = datetime.datetime.utcnow()
|
fake_deleted_audit_template['deleted_at'] = timeutils.utcnow()
|
||||||
m_soft_delete_audit_template.return_value = fake_deleted_audit_template
|
m_soft_delete_audit_template.return_value = fake_deleted_audit_template
|
||||||
|
|
||||||
expected_audit_template = fake_deleted_audit_template.copy()
|
expected_audit_template = fake_deleted_audit_template.copy()
|
||||||
|
@ -13,10 +13,10 @@
|
|||||||
# License for the specific language governing permissions and limitations
|
# License for the specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
import datetime
|
|
||||||
from unittest import mock
|
from unittest import mock
|
||||||
|
|
||||||
import iso8601
|
import iso8601
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher.db.sqlalchemy import api as db_api
|
from watcher.db.sqlalchemy import api as db_api
|
||||||
from watcher import objects
|
from watcher import objects
|
||||||
@ -29,7 +29,7 @@ class TestGoalObject(base.DbTestCase):
|
|||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(TestGoalObject, self).setUp()
|
super(TestGoalObject, self).setUp()
|
||||||
self.fake_goal = utils.get_test_goal(
|
self.fake_goal = utils.get_test_goal(
|
||||||
created_at=datetime.datetime.utcnow())
|
created_at=timeutils.utcnow())
|
||||||
|
|
||||||
@mock.patch.object(db_api.Connection, 'get_goal_by_id')
|
@mock.patch.object(db_api.Connection, 'get_goal_by_id')
|
||||||
def test_get_by_id(self, mock_get_goal):
|
def test_get_by_id(self, mock_get_goal):
|
||||||
@ -93,7 +93,7 @@ class TestGoalObject(base.DbTestCase):
|
|||||||
mock_get_goal.return_value = self.fake_goal
|
mock_get_goal.return_value = self.fake_goal
|
||||||
goal_uuid = self.fake_goal['uuid']
|
goal_uuid = self.fake_goal['uuid']
|
||||||
fake_saved_goal = self.fake_goal.copy()
|
fake_saved_goal = self.fake_goal.copy()
|
||||||
fake_saved_goal['updated_at'] = datetime.datetime.utcnow()
|
fake_saved_goal['updated_at'] = timeutils.utcnow()
|
||||||
mock_update_goal.return_value = fake_saved_goal
|
mock_update_goal.return_value = fake_saved_goal
|
||||||
|
|
||||||
goal = objects.Goal.get_by_uuid(self.context, goal_uuid)
|
goal = objects.Goal.get_by_uuid(self.context, goal_uuid)
|
||||||
@ -125,7 +125,7 @@ class TestGoalObject(base.DbTestCase):
|
|||||||
def test_soft_delete(self, mock_get_goal, mock_soft_delete_goal):
|
def test_soft_delete(self, mock_get_goal, mock_soft_delete_goal):
|
||||||
mock_get_goal.return_value = self.fake_goal
|
mock_get_goal.return_value = self.fake_goal
|
||||||
fake_deleted_goal = self.fake_goal.copy()
|
fake_deleted_goal = self.fake_goal.copy()
|
||||||
fake_deleted_goal['deleted_at'] = datetime.datetime.utcnow()
|
fake_deleted_goal['deleted_at'] = timeutils.utcnow()
|
||||||
mock_soft_delete_goal.return_value = fake_deleted_goal
|
mock_soft_delete_goal.return_value = fake_deleted_goal
|
||||||
|
|
||||||
expected_goal = fake_deleted_goal.copy()
|
expected_goal = fake_deleted_goal.copy()
|
||||||
|
@ -13,10 +13,10 @@
|
|||||||
# License for the specific language governing permissions and limitations
|
# License for the specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
import datetime
|
|
||||||
from unittest import mock
|
from unittest import mock
|
||||||
|
|
||||||
import iso8601
|
import iso8601
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher.db.sqlalchemy import api as db_api
|
from watcher.db.sqlalchemy import api as db_api
|
||||||
from watcher import objects
|
from watcher import objects
|
||||||
@ -29,7 +29,7 @@ class TestScoringEngineObject(base.DbTestCase):
|
|||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(TestScoringEngineObject, self).setUp()
|
super(TestScoringEngineObject, self).setUp()
|
||||||
self.fake_scoring_engine = utils.get_test_scoring_engine(
|
self.fake_scoring_engine = utils.get_test_scoring_engine(
|
||||||
created_at=datetime.datetime.utcnow())
|
created_at=timeutils.utcnow())
|
||||||
|
|
||||||
@mock.patch.object(db_api.Connection, 'get_scoring_engine_by_id')
|
@mock.patch.object(db_api.Connection, 'get_scoring_engine_by_id')
|
||||||
def test_get_by_id(self, mock_get_scoring_engine):
|
def test_get_by_id(self, mock_get_scoring_engine):
|
||||||
@ -100,7 +100,7 @@ class TestScoringEngineObject(base.DbTestCase):
|
|||||||
def test_save(self, mock_get_scoring_engine, mock_update_scoring_engine):
|
def test_save(self, mock_get_scoring_engine, mock_update_scoring_engine):
|
||||||
mock_get_scoring_engine.return_value = self.fake_scoring_engine
|
mock_get_scoring_engine.return_value = self.fake_scoring_engine
|
||||||
fake_saved_scoring_engine = self.fake_scoring_engine.copy()
|
fake_saved_scoring_engine = self.fake_scoring_engine.copy()
|
||||||
fake_saved_scoring_engine['updated_at'] = datetime.datetime.utcnow()
|
fake_saved_scoring_engine['updated_at'] = timeutils.utcnow()
|
||||||
mock_update_scoring_engine.return_value = fake_saved_scoring_engine
|
mock_update_scoring_engine.return_value = fake_saved_scoring_engine
|
||||||
|
|
||||||
uuid = self.fake_scoring_engine['uuid']
|
uuid = self.fake_scoring_engine['uuid']
|
||||||
@ -134,7 +134,7 @@ class TestScoringEngineObject(base.DbTestCase):
|
|||||||
def test_soft_delete(self, mock_get_scoring_engine, mock_soft_delete):
|
def test_soft_delete(self, mock_get_scoring_engine, mock_soft_delete):
|
||||||
mock_get_scoring_engine.return_value = self.fake_scoring_engine
|
mock_get_scoring_engine.return_value = self.fake_scoring_engine
|
||||||
fake_deleted_scoring_engine = self.fake_scoring_engine.copy()
|
fake_deleted_scoring_engine = self.fake_scoring_engine.copy()
|
||||||
fake_deleted_scoring_engine['deleted_at'] = datetime.datetime.utcnow()
|
fake_deleted_scoring_engine['deleted_at'] = timeutils.utcnow()
|
||||||
mock_soft_delete.return_value = fake_deleted_scoring_engine
|
mock_soft_delete.return_value = fake_deleted_scoring_engine
|
||||||
|
|
||||||
expected_scoring_engine = fake_deleted_scoring_engine.copy()
|
expected_scoring_engine = fake_deleted_scoring_engine.copy()
|
||||||
|
@ -13,10 +13,10 @@
|
|||||||
# License for the specific language governing permissions and limitations
|
# License for the specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
import datetime
|
|
||||||
from unittest import mock
|
from unittest import mock
|
||||||
|
|
||||||
import iso8601
|
import iso8601
|
||||||
|
from oslo_utils import timeutils
|
||||||
|
|
||||||
from watcher.db.sqlalchemy import api as db_api
|
from watcher.db.sqlalchemy import api as db_api
|
||||||
from watcher import objects
|
from watcher import objects
|
||||||
@ -29,7 +29,7 @@ class TestServiceObject(base.DbTestCase):
|
|||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(TestServiceObject, self).setUp()
|
super(TestServiceObject, self).setUp()
|
||||||
self.fake_service = utils.get_test_service(
|
self.fake_service = utils.get_test_service(
|
||||||
created_at=datetime.datetime.utcnow())
|
created_at=timeutils.utcnow())
|
||||||
|
|
||||||
@mock.patch.object(db_api.Connection, 'get_service_by_id')
|
@mock.patch.object(db_api.Connection, 'get_service_by_id')
|
||||||
def test_get_by_id(self, mock_get_service):
|
def test_get_by_id(self, mock_get_service):
|
||||||
@ -66,7 +66,7 @@ class TestServiceObject(base.DbTestCase):
|
|||||||
def test_save(self, mock_get_service, mock_update_service):
|
def test_save(self, mock_get_service, mock_update_service):
|
||||||
mock_get_service.return_value = self.fake_service
|
mock_get_service.return_value = self.fake_service
|
||||||
fake_saved_service = self.fake_service.copy()
|
fake_saved_service = self.fake_service.copy()
|
||||||
fake_saved_service['updated_at'] = datetime.datetime.utcnow()
|
fake_saved_service['updated_at'] = timeutils.utcnow()
|
||||||
mock_update_service.return_value = fake_saved_service
|
mock_update_service.return_value = fake_saved_service
|
||||||
_id = self.fake_service['id']
|
_id = self.fake_service['id']
|
||||||
service = objects.Service.get(self.context, _id)
|
service = objects.Service.get(self.context, _id)
|
||||||
@ -98,7 +98,7 @@ class TestServiceObject(base.DbTestCase):
|
|||||||
def test_soft_delete(self, mock_get_service, mock_soft_delete):
|
def test_soft_delete(self, mock_get_service, mock_soft_delete):
|
||||||
mock_get_service.return_value = self.fake_service
|
mock_get_service.return_value = self.fake_service
|
||||||
fake_deleted_service = self.fake_service.copy()
|
fake_deleted_service = self.fake_service.copy()
|
||||||
fake_deleted_service['deleted_at'] = datetime.datetime.utcnow()
|
fake_deleted_service['deleted_at'] = timeutils.utcnow()
|
||||||
mock_soft_delete.return_value = fake_deleted_service
|
mock_soft_delete.return_value = fake_deleted_service
|
||||||
|
|
||||||
expected_service = fake_deleted_service.copy()
|
expected_service = fake_deleted_service.copy()
|
||||||
|
Loading…
Reference in New Issue
Block a user