Add context to plugin tests

Most of our unit tests for the various plugins run with an empty
context. This adds a minimal context, containing only a task ID, in
order to support a future change to the way random names are
generated. It also makes it easier to add bits to the universal test
context in the future.

Change-Id: I8455c03140896400ec2017a7aa3f0c726508ceae
This commit is contained in:
Chris St. Pierre 2015-09-16 15:59:17 -05:00
parent cc796acd73
commit e82c7f313b
60 changed files with 532 additions and 532 deletions

View File

@ -39,7 +39,8 @@ class CeilometerSampleGeneratorTestCase(test.TestCase):
for i in range(users_per_tenant):
users.append({"id": i, "tenant_id": id_,
"endpoint": mock.MagicMock()})
context = {
context = test.get_test_context()
context.update({
"config": {
"users": {
"tenants": tenants_count,
@ -58,10 +59,9 @@ class CeilometerSampleGeneratorTestCase(test.TestCase):
"admin": {
"endpoint": mock.MagicMock()
},
"task": mock.MagicMock(),
"users": users,
"tenants": tenants
}
})
return tenants, context
def test_init(self):

View File

@ -34,17 +34,17 @@ class VolumeGeneratorTestCase(test.ScenarioTestCase):
return tenants
def test_init(self):
context = {}
context["task"] = mock.MagicMock()
context["config"] = {
"volumes": {
"size": 1,
"volumes_per_tenant": 5,
self.context.update({
"config": {
"volumes": {
"size": 1,
"volumes_per_tenant": 5,
}
}
}
})
inst = volumes.VolumeGenerator(context)
self.assertEqual(inst.config, context["config"]["volumes"])
inst = volumes.VolumeGenerator(self.context)
self.assertEqual(inst.config, self.context["config"]["volumes"])
@mock.patch("%s.cinder.utils.CinderScenario._create_volume" % SCN,
return_value=fakes.FakeVolume(id="uuid"))
@ -60,7 +60,7 @@ class VolumeGeneratorTestCase(test.ScenarioTestCase):
users.append({"id": i, "tenant_id": id_,
"endpoint": mock.MagicMock()})
real_context = {
self.context.update({
"config": {
"users": {
"tenants": 2,
@ -75,20 +75,19 @@ class VolumeGeneratorTestCase(test.ScenarioTestCase):
"admin": {
"endpoint": mock.MagicMock()
},
"task": mock.MagicMock(),
"users": users,
"tenants": tenants
}
})
new_context = copy.deepcopy(real_context)
new_context = copy.deepcopy(self.context)
for id_ in tenants.keys():
new_context["tenants"][id_].setdefault("volumes", [])
for i in range(volumes_per_tenant):
new_context["tenants"][id_]["volumes"].append({"id": "uuid"})
volumes_ctx = volumes.VolumeGenerator(real_context)
volumes_ctx = volumes.VolumeGenerator(self.context)
volumes_ctx.setup()
self.assertEqual(new_context, real_context)
self.assertEqual(new_context, self.context)
@mock.patch("%s.cinder.volumes.resource_manager.cleanup" % CTX)
def test_cleanup(self, mock_cleanup):
@ -107,7 +106,7 @@ class VolumeGeneratorTestCase(test.ScenarioTestCase):
for j in range(volumes_per_tenant):
tenants[id_]["volumes"].append({"id": "uuid"})
context = {
self.context.update({
"config": {
"users": {
"tenants": 2,
@ -122,13 +121,12 @@ class VolumeGeneratorTestCase(test.ScenarioTestCase):
"admin": {
"endpoint": mock.MagicMock()
},
"task": mock.MagicMock(),
"users": users,
"tenants": tenants
}
})
volumes_ctx = volumes.VolumeGenerator(context)
volumes_ctx = volumes.VolumeGenerator(self.context)
volumes_ctx.cleanup()
mock_cleanup.assert_called_once_with(names=["cinder.volumes"],
users=context["users"])
users=self.context["users"])

View File

@ -35,16 +35,14 @@ class ImageGeneratorTestCase(test.ScenarioTestCase):
return tenants
def test_init_validation(self):
context = {}
context["task"] = mock.MagicMock()
context["config"] = {
self.context["config"] = {
"images": {
"image_url": "mock_url"
}
}
self.assertRaises(jsonschema.ValidationError,
images.ImageGenerator.validate, context)
images.ImageGenerator.validate, self.context)
@mock.patch("%s.utils.GlanceScenario._create_image" % SCN,
return_value=fakes.FakeImage(id="uuid"))
@ -61,7 +59,7 @@ class ImageGeneratorTestCase(test.ScenarioTestCase):
users.append({"id": i, "tenant_id": id_,
"endpoint": mock.MagicMock()})
real_context = {
self.context.update({
"config": {
"users": {
"tenants": tenants_count,
@ -81,20 +79,19 @@ class ImageGeneratorTestCase(test.ScenarioTestCase):
"admin": {
"endpoint": mock.MagicMock()
},
"task": mock.MagicMock(),
"users": users,
"tenants": tenants
}
})
new_context = copy.deepcopy(real_context)
new_context = copy.deepcopy(self.context)
for id_ in new_context["tenants"].keys():
new_context["tenants"][id_].setdefault("images", [])
for j in range(images_per_tenant):
new_context["tenants"][id_]["images"].append("uuid")
images_ctx = images.ImageGenerator(real_context)
images_ctx = images.ImageGenerator(self.context)
images_ctx.setup()
self.assertEqual(new_context, real_context)
self.assertEqual(new_context, self.context)
@mock.patch("%s.images.resource_manager.cleanup" % CTX)
def test_cleanup(self, mock_cleanup):
@ -113,7 +110,7 @@ class ImageGeneratorTestCase(test.ScenarioTestCase):
for j in range(images_per_tenant):
tenants[id_]["images"].append("uuid")
context = {
self.context.update({
"config": {
"users": {
"tenants": 2,
@ -133,12 +130,11 @@ class ImageGeneratorTestCase(test.ScenarioTestCase):
"admin": {
"endpoint": mock.MagicMock()
},
"task": mock.MagicMock(),
"users": users,
"tenants": tenants
}
})
images_ctx = images.ImageGenerator(context)
images_ctx = images.ImageGenerator(self.context)
images_ctx.cleanup()
mock_cleanup.assert_called_once_with(names=["glance.images"],
users=context["users"])
users=self.context["users"])

View File

@ -32,18 +32,17 @@ class TestStackGenerator(test.ScenarioTestCase):
return tenants
def test_init(self):
context = {
"task": mock.MagicMock(),
self.context.update({
"config": {
"stacks": {
"stacks_per_tenant": 1,
"resources_per_stack": 1
}
}
}
})
inst = stacks.StackGenerator(context)
self.assertEqual(inst.config, context["config"]["stacks"])
inst = stacks.StackGenerator(self.context)
self.assertEqual(inst.config, self.context["config"]["stacks"])
@mock.patch("%s.heat.utils.HeatScenario._create_stack" % SCN,
return_value=fakes.FakeStack(id="uuid"))
@ -59,7 +58,7 @@ class TestStackGenerator(test.ScenarioTestCase):
users.append({"id": i, "tenant_id": ten_id,
"endpoint": mock.MagicMock()})
context = {
self.context.update({
"config": {
"users": {
"tenants": tenants_count,
@ -71,27 +70,25 @@ class TestStackGenerator(test.ScenarioTestCase):
"resources_per_stack": 1
}
},
"task": mock.MagicMock(),
"users": users,
"tenants": tenants
}
})
stack_ctx = stacks.StackGenerator(context)
stack_ctx = stacks.StackGenerator(self.context)
stack_ctx.setup()
self.assertEqual(tenants_count * stacks_per_tenant,
mock_heat_scenario__create_stack.call_count)
# check that stack ids have been saved in context
for ten_id in context["tenants"].keys():
for ten_id in self.context["tenants"].keys():
self.assertEqual(stacks_per_tenant,
len(context["tenants"][ten_id]["stacks"]))
len(self.context["tenants"][ten_id]["stacks"]))
@mock.patch("%s.heat.stacks.resource_manager.cleanup" % CTX)
def test_cleanup(self, mock_cleanup):
context = {
"task": mock.MagicMock(),
self.context.update({
"users": mock.MagicMock()
}
stack_ctx = stacks.StackGenerator(context)
})
stack_ctx = stacks.StackGenerator(self.context)
stack_ctx.cleanup()
mock_cleanup.assert_called_once_with(names=["heat.stacks"],
users=context["users"])
users=self.context["users"])

View File

@ -60,16 +60,18 @@ class UserContextMixinTestCase(test.TestCase):
)
class UserGeneratorTestCase(test.TestCase):
class UserGeneratorTestCase(test.ScenarioTestCase):
tenants_num = 1
users_per_tenant = 5
users_num = tenants_num * users_per_tenant
threads = 10
@property
def context(self):
return {
def setUp(self):
super(UserGeneratorTestCase, self).setUp()
self.osclients_patcher = mock.patch("%s.osclients" % CTX)
self.osclients = self.osclients_patcher.start()
self.context.update({
"config": {
"users": {
"tenants": self.tenants_num,
@ -80,12 +82,7 @@ class UserGeneratorTestCase(test.TestCase):
"admin": {"endpoint": mock.MagicMock()},
"users": [],
"task": {"uuid": "task_id"}
}
def setUp(self):
super(UserGeneratorTestCase, self).setUp()
self.osclients_patcher = mock.patch("%s.osclients" % CTX)
self.osclients = self.osclients_patcher.start()
})
def tearDown(self):
self.osclients_patcher.stop()
@ -315,37 +312,32 @@ class UserGeneratorTestCase(test.TestCase):
def test_users_and_tenants_in_context(self, mock_keystone):
wrapped_keystone = mock.MagicMock()
mock_keystone.wrap.return_value = wrapped_keystone
task = {"uuid": "abcdef"}
endpoint = objects.Endpoint("foo_url", "foo", "foo_pass",
https_insecure=True,
https_cacert="cacert")
config = {
"config": {
"users": {
"tenants": 1,
"users_per_tenant": 2,
"resource_management_workers": 1
}
},
"admin": {"endpoint": endpoint},
"task": task
}
tmp_context = dict(self.context)
tmp_context["config"]["users"] = {"tenants": 1,
"users_per_tenant": 2,
"resource_management_workers": 1}
tmp_context["admin"]["endpoint"] = endpoint
endpoint_dict = endpoint.to_dict(False)
user_list = [mock.MagicMock(id="id_%d" % i)
for i in range(self.users_num)]
wrapped_keystone.create_user.side_effect = user_list
with users.UserGenerator(config) as ctx:
with users.UserGenerator(tmp_context) as ctx:
ctx.setup()
create_tenant_calls = []
for i, t in enumerate(ctx.context["tenants"]):
pattern = users.UserGenerator.PATTERN_TENANT
create_tenant_calls.append(
mock.call(pattern % {"task_id": task["uuid"], "iter": i},
ctx.config["project_domain"]))
mock.call(
pattern % {"task_id": tmp_context["task"]["uuid"],
"iter": i},
ctx.config["project_domain"]))
for user in ctx.context["users"]:
self.assertEqual(set(["id", "endpoint", "tenant_id"]),

View File

@ -28,9 +28,11 @@ class AllowSSHContextTestCase(test.TestCase):
def setUp(self):
super(AllowSSHContextTestCase, self).setUp()
self.users = 2
task = {"uuid": "foo_task_id"}
self.secgroup_name = allow_ssh.SSH_GROUP_NAME + "_foo"
self.ctx_with_secgroup = {
self.secgroup_name = "test-secgroup"
self.ctx_with_secgroup = test.get_test_context()
self.ctx_with_secgroup.update({
"users": [
{
"tenant_id": "uuid1",
@ -40,17 +42,16 @@ class AllowSSHContextTestCase(test.TestCase):
] * self.users,
"admin": {"tenant_id": "uuid2", "endpoint": "admin_endpoint"},
"tenants": {"uuid1": {"id": "uuid1", "name": "uuid1"}},
"task": task
}
self.ctx_without_secgroup = {
})
self.ctx_without_secgroup = test.get_test_context()
self.ctx_without_secgroup.update({
"users": [{"tenant_id": "uuid1",
"endpoint": "endpoint"},
{"tenant_id": "uuid1",
"endpoint": "endpoint"}],
"admin": {"tenant_id": "uuid2", "endpoint": "admin_endpoint"},
"tenants": {"uuid1": {"id": "uuid1", "name": "uuid1"}},
"task": task
}
})
@mock.patch("%s.osclients.Clients" % CTX)
def test__prepare_open_secgroup(self, mock_clients):
@ -108,7 +109,7 @@ class AllowSSHContextTestCase(test.TestCase):
"id": "secgroup_id"}
mock_clients.return_value = mock.MagicMock()
secgrp_ctx = allow_ssh.AllowSSH(self.ctx_without_secgroup)
secgrp_ctx = allow_ssh.AllowSSH(self.ctx_with_secgroup)
secgrp_ctx.setup()
self.assertEqual(self.ctx_with_secgroup, secgrp_ctx.context)
secgrp_ctx.cleanup()

View File

@ -26,8 +26,8 @@ class ExistingNetworkTestCase(test.TestCase):
super(ExistingNetworkTestCase, self).setUp()
self.config = mock.MagicMock()
self.context = {
"task": mock.MagicMock(),
self.context = test.get_test_context()
self.context.update({
"users": [
{"id": 1,
"tenant_id": "tenant1",
@ -43,7 +43,7 @@ class ExistingNetworkTestCase(test.TestCase):
"config": {
"existing_network": self.config
},
}
})
@mock.patch("rally.osclients.Clients")
@mock.patch("rally.plugins.openstack.wrappers.network.wrap")

View File

@ -37,17 +37,16 @@ class ServerGeneratorTestCase(test.ScenarioTestCase):
def test_init(self):
tenants_count = 2
servers_per_tenant = 5
context = {}
context["task"] = mock.MagicMock()
context["config"] = {
"servers": {
"servers_per_tenant": servers_per_tenant,
}
}
context["tenants"] = self._gen_tenants(tenants_count)
self.context.update({
"config": {
"servers": {
"servers_per_tenant": servers_per_tenant,
}
},
"tenants": self._gen_tenants(tenants_count)})
inst = servers.ServerGenerator(context)
self.assertEqual(context["config"]["servers"], inst.config)
inst = servers.ServerGenerator(self.context)
self.assertEqual(self.context["config"]["servers"], inst.config)
@mock.patch("%s.nova.utils.NovaScenario._boot_servers" % SCN,
return_value=[
@ -77,7 +76,7 @@ class ServerGeneratorTestCase(test.ScenarioTestCase):
users.append({"id": i, "tenant_id": id_,
"endpoint": mock.MagicMock()})
real_context = {
self.context.update({
"config": {
"users": {
"tenants": 2,
@ -98,23 +97,22 @@ class ServerGeneratorTestCase(test.ScenarioTestCase):
"admin": {
"endpoint": mock.MagicMock()
},
"task": mock.MagicMock(),
"users": users,
"tenants": tenants
}
})
new_context = copy.deepcopy(real_context)
new_context = copy.deepcopy(self.context)
for id_ in new_context["tenants"]:
new_context["tenants"][id_].setdefault("servers", [])
for i in range(servers_per_tenant):
new_context["tenants"][id_]["servers"].append("uuid")
servers_ctx = servers.ServerGenerator(real_context)
servers_ctx = servers.ServerGenerator(self.context)
servers_ctx.setup()
self.assertEqual(new_context, real_context)
self.assertEqual(new_context, self.context)
image_id = mock_image_resource_type_transform.return_value
flavor_id = mock_flavor_resource_type_transform.return_value
servers_ctx_config = real_context["config"]["servers"]
servers_ctx_config = self.context["config"]["servers"]
expected_auto_nic = servers_ctx_config.get("auto_assign_nic", False)
expected_requests = servers_ctx_config.get("servers_per_tenant", False)
called_times = len(tenants)
@ -142,7 +140,7 @@ class ServerGeneratorTestCase(test.ScenarioTestCase):
for j in range(servers_per_tenant):
tenants[id_]["servers"].append("uuid")
context = {
self.context.update({
"config": {
"users": {
"tenants": 2,
@ -162,13 +160,12 @@ class ServerGeneratorTestCase(test.ScenarioTestCase):
"admin": {
"endpoint": mock.MagicMock()
},
"task": mock.MagicMock(),
"users": users,
"tenants": tenants
}
})
servers_ctx = servers.ServerGenerator(context)
servers_ctx = servers.ServerGenerator(self.context)
servers_ctx.cleanup()
mock_cleanup.assert_called_once_with(names=["nova.servers"],
users=context["users"])
users=self.context["users"])

View File

@ -33,7 +33,6 @@ class SaharaClusterTestCase(test.ScenarioTestCase):
self.tenants_num = 2
self.users_per_tenant = 2
self.users = self.tenants_num * self.users_per_tenant
self.task = mock.MagicMock()
self.tenants = {}
self.users_key = []
@ -48,9 +47,7 @@ class SaharaClusterTestCase(test.ScenarioTestCase):
CONF.set_override("cluster_check_interval", 0, "benchmark")
@property
def context_without_cluster_keys(self):
return {
self.context.update({
"config": {
"users": {
"tenants": self.tenants_num,
@ -64,19 +61,16 @@ class SaharaClusterTestCase(test.ScenarioTestCase):
}
},
"admin": {"endpoint": mock.MagicMock()},
"task": mock.MagicMock(),
"users": self.users_key,
"tenants": self.tenants
}
})
@mock.patch("%s.sahara_cluster.resource_manager.cleanup" % CTX)
@mock.patch("%s.sahara_cluster.utils.SaharaScenario._launch_cluster" % CTX,
return_value=mock.MagicMock(id=42))
def test_setup_and_cleanup(self, mock_sahara_scenario__launch_cluster,
mock_cleanup):
ctx = self.context_without_cluster_keys
sahara_ctx = sahara_cluster.SaharaCluster(ctx)
sahara_ctx = sahara_cluster.SaharaCluster(self.context)
launch_cluster_calls = []
@ -86,7 +80,7 @@ class SaharaClusterTestCase(test.ScenarioTestCase):
hadoop_version="test_version",
flavor_id="test_flavor",
workers_count=2,
image_id=ctx["tenants"][i]["sahara_image"],
image_id=self.context["tenants"][i]["sahara_image"],
floating_ip_pool=None,
volumes_per_node=None,
volumes_size=1,
@ -107,15 +101,13 @@ class SaharaClusterTestCase(test.ScenarioTestCase):
launch_cluster_calls)
sahara_ctx.cleanup()
mock_cleanup.assert_called_once_with(names=["sahara.clusters"],
users=ctx["users"])
users=self.context["users"])
@mock.patch("%s.sahara_cluster.utils.SaharaScenario._launch_cluster" % CTX,
return_value=mock.MagicMock(id=42))
def test_setup_and_cleanup_error(self,
mock_sahara_scenario__launch_cluster):
ctx = self.context_without_cluster_keys
sahara_ctx = sahara_cluster.SaharaCluster(ctx)
sahara_ctx = sahara_cluster.SaharaCluster(self.context)
launch_cluster_calls = []
@ -125,7 +117,7 @@ class SaharaClusterTestCase(test.ScenarioTestCase):
hadoop_version="test_version",
flavor_id="test_flavor",
workers_count=2,
image_id=ctx["tenants"][i]["sahara_image"],
image_id=self.context["tenants"][i]["sahara_image"],
floating_ip_pool=None,
volumes_per_node=None,
volumes_size=1,

View File

@ -46,7 +46,7 @@ class SaharaImageTestCase(test.ScenarioTestCase):
@property
def url_image_context(self):
return {
self.context.update({
"config": {
"users": {
"tenants": self.tenants_num,
@ -60,14 +60,14 @@ class SaharaImageTestCase(test.ScenarioTestCase):
}
},
"admin": {"endpoint": mock.MagicMock()},
"task": mock.MagicMock(),
"users": self.users_key,
"tenants": self.tenants
}
})
return self.context
@property
def existing_image_context(self):
return {
self.context.update({
"config": {
"users": {
"tenants": self.tenants_num,
@ -78,10 +78,10 @@ class SaharaImageTestCase(test.ScenarioTestCase):
}
},
"admin": {"endpoint": mock.MagicMock()},
"task": mock.MagicMock(),
"users": self.users_key,
"tenants": self.tenants
}
})
return self.context
@mock.patch("%s.rutils.generate_random_name" % CTX,
return_value="sahara_image_42")

View File

@ -18,9 +18,9 @@ from rally.plugins.openstack.scenarios.ceilometer import alarms
from tests.unit import test
class CeilometerAlarmsTestCase(test.TestCase):
class CeilometerAlarmsTestCase(test.ScenarioTestCase):
def test_create_alarm(self):
scenario = alarms.CeilometerAlarms()
scenario = alarms.CeilometerAlarms(self.context)
scenario._create_alarm = mock.MagicMock()
scenario.create_alarm("fake_meter_name",
@ -31,7 +31,7 @@ class CeilometerAlarmsTestCase(test.TestCase):
{"fakearg": "f"})
def test_list_alarm(self):
scenario = alarms.CeilometerAlarms()
scenario = alarms.CeilometerAlarms(self.context)
scenario._list_alarms = mock.MagicMock()
scenario.list_alarms()
@ -39,7 +39,7 @@ class CeilometerAlarmsTestCase(test.TestCase):
def test_create_and_list_alarm(self):
fake_alarm = mock.MagicMock()
scenario = alarms.CeilometerAlarms()
scenario = alarms.CeilometerAlarms(self.context)
scenario._create_alarm = mock.MagicMock(return_value=fake_alarm)
scenario._list_alarms = mock.MagicMock()
@ -54,7 +54,7 @@ class CeilometerAlarmsTestCase(test.TestCase):
def test_create_and_update_alarm(self):
fake_alram_dict_diff = {"description": "Changed Test Description"}
fake_alarm = mock.MagicMock()
scenario = alarms.CeilometerAlarms()
scenario = alarms.CeilometerAlarms(self.context)
scenario._create_alarm = mock.MagicMock(return_value=fake_alarm)
scenario._update_alarm = mock.MagicMock()
@ -69,7 +69,7 @@ class CeilometerAlarmsTestCase(test.TestCase):
def test_create_and_delete_alarm(self):
fake_alarm = mock.MagicMock()
scenario = alarms.CeilometerAlarms()
scenario = alarms.CeilometerAlarms(self.context)
scenario._create_alarm = mock.MagicMock(return_value=fake_alarm)
scenario._delete_alarm = mock.MagicMock()
@ -83,7 +83,7 @@ class CeilometerAlarmsTestCase(test.TestCase):
def test_create_and_get_alarm_history(self):
alarm = mock.Mock(alarm_id="foo_id")
scenario = alarms.CeilometerAlarms()
scenario = alarms.CeilometerAlarms(self.context)
scenario._create_alarm = mock.MagicMock(return_value=alarm)
scenario._get_alarm_state = mock.MagicMock()
scenario._get_alarm_history = mock.MagicMock()

View File

@ -18,10 +18,10 @@ from rally.plugins.openstack.scenarios.ceilometer import events
from tests.unit import test
class CeilometerEventsTestCase(test.TestCase):
class CeilometerEventsTestCase(test.ScenarioTestCase):
def test_list_events(self):
scenario = events.CeilometerEvents()
scenario = events.CeilometerEvents(self.context)
scenario._user_create = mock.MagicMock()
scenario._list_events = mock.MagicMock()
@ -30,7 +30,7 @@ class CeilometerEventsTestCase(test.TestCase):
scenario._list_events.assert_called_once_with()
def test_list_event_types(self):
scenario = events.CeilometerEvents()
scenario = events.CeilometerEvents(self.context)
scenario._list_event_types = mock.MagicMock()
scenario._user_create = mock.MagicMock()
@ -39,7 +39,7 @@ class CeilometerEventsTestCase(test.TestCase):
scenario._list_event_types.assert_called_once_with()
def test_get_event(self):
scenario = events.CeilometerEvents()
scenario = events.CeilometerEvents(self.context)
scenario._user_create = mock.MagicMock()
scenario._list_events = mock.MagicMock()

View File

@ -18,9 +18,9 @@ from rally.plugins.openstack.scenarios.ceilometer import meters
from tests.unit import test
class CeilometerMetersTestCase(test.TestCase):
class CeilometerMetersTestCase(test.ScenarioTestCase):
def test_list_meters(self):
scenario = meters.CeilometerMeters()
scenario = meters.CeilometerMeters(self.context)
scenario._list_meters = mock.MagicMock()
scenario.list_meters()
scenario._list_meters.assert_called_once_with()

View File

@ -20,9 +20,9 @@ from rally.plugins.openstack.scenarios.ceilometer import queries
from tests.unit import test
class CeilometerQueriesTestCase(test.TestCase):
class CeilometerQueriesTestCase(test.ScenarioTestCase):
def test_create_and_query_alarms(self):
scenario = queries.CeilometerQueries()
scenario = queries.CeilometerQueries(self.context)
scenario._create_alarm = mock.MagicMock()
scenario._query_alarms = mock.MagicMock()
@ -36,7 +36,7 @@ class CeilometerQueriesTestCase(test.TestCase):
json.dumps("fake_filter"), "fake_orderby_attribute", 10)
def test_create_and_query_alarms_no_filter(self):
scenario = queries.CeilometerQueries()
scenario = queries.CeilometerQueries(self.context)
scenario._create_alarm = mock.MagicMock()
scenario._query_alarms = mock.MagicMock()
@ -52,7 +52,7 @@ class CeilometerQueriesTestCase(test.TestCase):
def test_create_and_query_alarm_history(self):
fake_alarm = mock.MagicMock()
fake_alarm.alarm_id = "fake_alarm_id"
scenario = queries.CeilometerQueries()
scenario = queries.CeilometerQueries(self.context)
scenario._create_alarm = mock.MagicMock(return_value=fake_alarm)
scenario._query_alarm_history = mock.MagicMock()
@ -66,7 +66,7 @@ class CeilometerQueriesTestCase(test.TestCase):
fake_filter, "fake_orderby_attribute", 10)
def test_create_and_query_samples(self):
scenario = queries.CeilometerQueries()
scenario = queries.CeilometerQueries(self.context)
scenario._create_sample = mock.MagicMock()
scenario._query_samples = mock.MagicMock()
@ -89,7 +89,7 @@ class CeilometerQueriesTestCase(test.TestCase):
json.dumps("fake_filter"), "fake_orderby_attribute", 10)
def test_create_and_query_samples_no_filter(self):
scenario = queries.CeilometerQueries()
scenario = queries.CeilometerQueries(self.context)
scenario._create_sample = mock.MagicMock()
scenario._query_samples = mock.MagicMock()

View File

@ -19,15 +19,15 @@ from rally.plugins.openstack.scenarios.ceilometer import resources
from tests.unit import test
class CeilometerResourcesTestCase(test.TestCase):
class CeilometerResourcesTestCase(test.ScenarioTestCase):
def test_list_resources(self):
scenario = resources.CeilometerResource()
scenario = resources.CeilometerResource(self.context)
scenario._list_resources = mock.MagicMock()
scenario.list_resources()
scenario._list_resources.assert_called_once_with()
def test_get_tenant_resources(self):
scenario = resources.CeilometerResource()
scenario = resources.CeilometerResource(self.context)
resource_list = ["id1", "id2", "id3", "id4"]
context = {"user": {"tenant_id": "fake"},
"tenant": {"id": "fake", "resources": resource_list}}
@ -38,7 +38,7 @@ class CeilometerResourcesTestCase(test.TestCase):
scenario._get_resource.assert_any_call(resource_id)
def test_get_tenant_resources_with_exception(self):
scenario = resources.CeilometerResource()
scenario = resources.CeilometerResource(self.context)
resource_list = []
context = {"user": {"tenant_id": "fake"},
"tenant": {"id": "fake", "resources": resource_list}}

View File

@ -18,9 +18,9 @@ from rally.plugins.openstack.scenarios.ceilometer import samples
from tests.unit import test
class CeilometerSamplesTestCase(test.TestCase):
class CeilometerSamplesTestCase(test.ScenarioTestCase):
def test_list_samples(self):
scenario = samples.CeilometerSamples()
scenario = samples.CeilometerSamples(self.context)
scenario._list_samples = mock.MagicMock()
scenario.list_samples()
scenario._list_samples.assert_called_once_with()

View File

@ -18,11 +18,11 @@ from rally.plugins.openstack.scenarios.ceilometer import stats
from tests.unit import test
class CeilometerStatsTestCase(test.TestCase):
class CeilometerStatsTestCase(test.ScenarioTestCase):
def test_create_meter_and_get_stats(self):
fake_meter = mock.MagicMock()
kwargs = mock.MagicMock()
scenario = stats.CeilometerStats()
scenario = stats.CeilometerStats(self.context)
scenario._create_meter = mock.MagicMock(return_value=fake_meter)
scenario._get_stats = mock.MagicMock()
scenario.create_meter_and_get_stats(**kwargs)

View File

@ -18,10 +18,10 @@ from rally.plugins.openstack.scenarios.ceilometer import traits
from tests.unit import test
class CeilometerTraitsTestCase(test.TestCase):
class CeilometerTraitsTestCase(test.ScenarioTestCase):
def test_list_traits(self):
scenario = traits.CeilometerTraits()
scenario = traits.CeilometerTraits(self.context)
scenario._user_create = mock.MagicMock()
scenario._list_events = mock.MagicMock()
@ -37,7 +37,7 @@ class CeilometerTraitsTestCase(test.TestCase):
event_type="fake_event_type", trait_name="fake_trait_name")
def test_list_trait_descriptions(self):
scenario = traits.CeilometerTraits()
scenario = traits.CeilometerTraits(self.context)
scenario._user_create = mock.MagicMock()
scenario._list_events = mock.MagicMock()

View File

@ -25,7 +25,7 @@ CEILOMETER_UTILS = "rally.plugins.openstack.scenarios.ceilometer.utils"
class CeilometerScenarioTestCase(test.ScenarioTestCase):
def setUp(self):
super(CeilometerScenarioTestCase, self).setUp()
self.scenario = utils.CeilometerScenario()
self.scenario = utils.CeilometerScenario(self.context)
def test__list_alarms_by_id(self):
self.assertEqual(self.clients("ceilometer").alarms.get.return_value,

View File

@ -29,7 +29,7 @@ class CinderScenarioTestCase(test.ScenarioTestCase):
def setUp(self):
super(CinderScenarioTestCase, self).setUp()
self.scenario = utils.CinderScenario()
self.scenario = utils.CinderScenario(self.context)
def test__list_volumes(self):
return_volumes_list = self.scenario._list_volumes()

View File

@ -29,14 +29,17 @@ class fake_type(object):
class CinderServersTestCase(test.ScenarioTestCase):
def _get_context(self):
return {"user": {"tenant_id": "fake",
"endpoint": mock.MagicMock()},
"tenant": {"id": "fake", "name": "fake",
"volumes": [{"id": "uuid"}],
"servers": [1]}}
context = test.get_test_context()
context.update({
"user": {"tenant_id": "fake",
"endpoint": mock.MagicMock()},
"tenant": {"id": "fake", "name": "fake",
"volumes": [{"id": "uuid"}],
"servers": [1]}})
return context
def test_create_and_list_volume(self):
scenario = volumes.CinderVolumes()
scenario = volumes.CinderVolumes(self.context)
scenario._create_volume = mock.MagicMock()
scenario._list_volumes = mock.MagicMock()
scenario.create_and_list_volume(1, True, fakearg="f")
@ -44,7 +47,7 @@ class CinderServersTestCase(test.ScenarioTestCase):
scenario._list_volumes.assert_called_once_with(True)
def test_list_volumes(self):
scenario = volumes.CinderVolumes()
scenario = volumes.CinderVolumes(self.context)
scenario._list_volumes = mock.MagicMock()
scenario.list_volumes(True)
scenario._list_volumes.assert_called_once_with(True)
@ -64,7 +67,7 @@ class CinderServersTestCase(test.ScenarioTestCase):
def test_create_and_delete_volume(self):
fake_volume = mock.MagicMock()
scenario = volumes.CinderVolumes()
scenario = volumes.CinderVolumes(self.context)
scenario._create_volume = mock.MagicMock(return_value=fake_volume)
scenario.sleep_between = mock.MagicMock()
scenario._delete_volume = mock.MagicMock()
@ -78,7 +81,7 @@ class CinderServersTestCase(test.ScenarioTestCase):
def test_create_volume(self):
fake_volume = mock.MagicMock()
scenario = volumes.CinderVolumes()
scenario = volumes.CinderVolumes(self.context)
scenario._create_volume = mock.MagicMock(return_value=fake_volume)
scenario.create_volume(1, fakearg="f")
@ -99,7 +102,7 @@ class CinderServersTestCase(test.ScenarioTestCase):
def test_create_and_extend_volume(self):
fake_volume = mock.MagicMock()
scenario = volumes.CinderVolumes()
scenario = volumes.CinderVolumes(self.context)
scenario._create_volume = mock.MagicMock(return_value=fake_volume)
scenario._extend_volume = mock.MagicMock(return_value=fake_volume)
scenario.sleep_between = mock.MagicMock()
@ -113,7 +116,7 @@ class CinderServersTestCase(test.ScenarioTestCase):
def test_create_from_image_and_delete_volume(self):
fake_volume = mock.MagicMock()
scenario = volumes.CinderVolumes()
scenario = volumes.CinderVolumes(self.context)
scenario._create_volume = mock.MagicMock(return_value=fake_volume)
scenario._delete_volume = mock.MagicMock()
@ -125,7 +128,7 @@ class CinderServersTestCase(test.ScenarioTestCase):
def test_create_volume_from_image(self):
fake_volume = mock.MagicMock()
scenario = volumes.CinderVolumes()
scenario = volumes.CinderVolumes(self.context)
scenario._create_volume = mock.MagicMock(return_value=fake_volume)
scenario.create_volume(1, image="fake_image")
@ -134,7 +137,7 @@ class CinderServersTestCase(test.ScenarioTestCase):
def test_create_volume_from_image_and_list(self):
fake_volume = mock.MagicMock()
scenario = volumes.CinderVolumes()
scenario = volumes.CinderVolumes(self.context)
scenario._create_volume = mock.MagicMock(return_value=fake_volume)
scenario._list_volumes = mock.MagicMock()
@ -183,7 +186,7 @@ class CinderServersTestCase(test.ScenarioTestCase):
def test_create_and_attach_volume(self):
fake_volume = mock.MagicMock()
fake_server = mock.MagicMock()
scenario = volumes.CinderVolumes()
scenario = volumes.CinderVolumes(self.context)
scenario._attach_volume = mock.MagicMock()
scenario._detach_volume = mock.MagicMock()
@ -205,7 +208,7 @@ class CinderServersTestCase(test.ScenarioTestCase):
def test_create_and_upload_volume_to_image(self):
fake_volume = mock.Mock()
fake_image = mock.Mock()
scenario = volumes.CinderVolumes()
scenario = volumes.CinderVolumes(self.context)
scenario._create_volume = mock.MagicMock(return_value=fake_volume)
scenario._upload_volume_to_image = mock.MagicMock(
@ -413,7 +416,7 @@ class CinderServersTestCase(test.ScenarioTestCase):
self.assertFalse(scenario._delete_backup.called)
def _get_scenario(self, fake_volume, fake_backup, fake_restore=None):
scenario = volumes.CinderVolumes()
scenario = volumes.CinderVolumes(self.context)
scenario._create_volume = mock.MagicMock(return_value=fake_volume)
scenario._create_backup = mock.MagicMock(return_value=fake_backup)

View File

@ -23,13 +23,13 @@ DESIGNATE_BASIC = ("rally.plugins.openstack.scenarios.designate.basic"
".DesignateBasic")
class DesignateBasicTestCase(test.TestCase):
class DesignateBasicTestCase(test.ScenarioTestCase):
@mock.patch(DESIGNATE_BASIC + "._list_domains")
@mock.patch(DESIGNATE_BASIC + "._create_domain")
def test_create_and_list_domains(self, mock_designate_basic__create_domain,
mock_designate_basic__list_domains):
scenario = basic.DesignateBasic()
scenario = basic.DesignateBasic(self.context)
# Default options
scenario.create_and_list_domains()
@ -42,7 +42,7 @@ class DesignateBasicTestCase(test.TestCase):
self, mock_designate_basic__create_domain,
mock_designate_basic__delete_domain):
scenario = basic.DesignateBasic()
scenario = basic.DesignateBasic(self.context)
mock_designate_basic__create_domain.return_value = {"id": "123"}
@ -54,7 +54,7 @@ class DesignateBasicTestCase(test.TestCase):
@mock.patch(DESIGNATE_BASIC + "._list_domains")
def test_list_domains(self, mock_designate_basic__list_domains):
scenario = basic.DesignateBasic()
scenario = basic.DesignateBasic(self.context)
# Default options
scenario.list_domains()
@ -67,7 +67,7 @@ class DesignateBasicTestCase(test.TestCase):
self, mock_designate_basic__create_domain,
mock_designate_basic__create_record,
mock_designate_basic__list_records):
scenario = basic.DesignateBasic()
scenario = basic.DesignateBasic(self.context)
domain = {
"name": "zone.name",
"email": "email@zone.name",
@ -92,7 +92,7 @@ class DesignateBasicTestCase(test.TestCase):
self, mock_designate_basic__create_domain,
mock_designate_basic__create_record,
mock_designate_basic__delete_record):
scenario = basic.DesignateBasic()
scenario = basic.DesignateBasic(self.context)
domain = {
"name": "zone.name",
"email": "email@zone.name",
@ -115,7 +115,7 @@ class DesignateBasicTestCase(test.TestCase):
@mock.patch(DESIGNATE_BASIC + "._list_records")
def test_list_records(self, mock_designate_basic__list_records):
scenario = basic.DesignateBasic()
scenario = basic.DesignateBasic(self.context)
# Default options
scenario.list_records("123")
@ -126,7 +126,7 @@ class DesignateBasicTestCase(test.TestCase):
def test_create_and_list_servers(
self, mock_designate_basic__create_server,
mock_designate_basic__list_servers):
scenario = basic.DesignateBasic()
scenario = basic.DesignateBasic(self.context)
# Default options
scenario.create_and_list_servers()
@ -138,7 +138,7 @@ class DesignateBasicTestCase(test.TestCase):
def test_create_and_delete_server(
self, mock_designate_basic__create_server,
mock_designate_basic__delete_server):
scenario = basic.DesignateBasic()
scenario = basic.DesignateBasic(self.context)
mock_designate_basic__create_server.return_value = {"id": "123"}
@ -150,7 +150,7 @@ class DesignateBasicTestCase(test.TestCase):
@mock.patch(DESIGNATE_BASIC + "._list_servers")
def test_list_servers(self, mock_designate_basic__list_servers):
scenario = basic.DesignateBasic()
scenario = basic.DesignateBasic(self.context)
# Default options
scenario.list_servers()

View File

@ -38,6 +38,7 @@ class DesignateScenarioTestCase(test.ScenarioTestCase):
email = "root@zone.name"
mock_generate_random_name.return_value = random_name
scenario = utils.DesignateScenario(context=self.context)
self.clients("designate").domains.create.return_value = self.domain
# Check that the defaults / randoms are used if nothing is specified
@ -57,7 +58,7 @@ class DesignateScenarioTestCase(test.ScenarioTestCase):
self.assertEqual(self.domain, domain)
def test_list_domains(self):
scenario = utils.DesignateScenario()
scenario = utils.DesignateScenario(context=self.context)
return_domains_list = scenario._list_domains()
self.assertEqual(self.clients("designate").domains.list.return_value,
return_domains_list)
@ -65,7 +66,7 @@ class DesignateScenarioTestCase(test.ScenarioTestCase):
"designate.list_domains")
def test_delete_domain(self):
scenario = utils.DesignateScenario()
scenario = utils.DesignateScenario(context=self.context)
domain = scenario._create_domain()
scenario._delete_domain(domain["id"])
@ -81,6 +82,7 @@ class DesignateScenarioTestCase(test.ScenarioTestCase):
random_record_name = "%s.%s" % (random_name, domain_name)
mock_generate_random_name.return_value = random_name
scenario = utils.DesignateScenario(context=self.context)
domain = {"name": domain_name, "id": "123"}
@ -102,7 +104,7 @@ class DesignateScenarioTestCase(test.ScenarioTestCase):
domain["id"], record)
def test_list_records(self):
scenario = utils.DesignateScenario()
scenario = utils.DesignateScenario(context=self.context)
return_records_list = scenario._list_records("123")
self.assertEqual(self.clients("designate").records.list.return_value,
return_records_list)
@ -110,7 +112,7 @@ class DesignateScenarioTestCase(test.ScenarioTestCase):
"designate.list_records")
def test_delete_record(self):
scenario = utils.DesignateScenario()
scenario = utils.DesignateScenario(context=self.context)
domain_id = mock.Mock()
record_id = mock.Mock()
@ -127,7 +129,7 @@ class DesignateScenarioTestCase(test.ScenarioTestCase):
@mock.patch("rally.common.utils.generate_random_name")
def test_create_server(self, mock_generate_random_name):
scenario = utils.DesignateScenario()
scenario = utils.DesignateScenario(context=self.context)
random_name = "foo"
explicit_name = "bar.io."
@ -154,7 +156,7 @@ class DesignateScenarioTestCase(test.ScenarioTestCase):
self.assertEqual(self.server, server)
def test_delete_server(self):
scenario = utils.DesignateScenario()
scenario = utils.DesignateScenario(context=self.context)
scenario._delete_server("foo_id")
self.admin_clients("designate").servers.delete.assert_called_once_with(

View File

@ -27,7 +27,7 @@ class EC2ServersTestCase(test.ScenarioTestCase):
scenario._list_servers.assert_called_once_with()
def test_boot_server(self):
scenario = servers.EC2Servers()
scenario = servers.EC2Servers(self.context)
scenario._boot_servers = mock.Mock()
scenario.boot_server("foo_image", "foo_flavor", foo="bar")
scenario._boot_servers.assert_called_once_with(

View File

@ -41,7 +41,7 @@ class EC2ScenarioTestCase(test.ScenarioTestCase):
def test__update_resource(self):
resource = mock.MagicMock()
scenario = utils.EC2Scenario()
scenario = utils.EC2Scenario(self.context)
self.assertEqual(scenario._update_resource(resource), resource)
resource.update.assert_called_once_with()

View File

@ -22,7 +22,7 @@ from tests.unit import test
GLANCE_IMAGES = "rally.plugins.openstack.scenarios.glance.images.GlanceImages"
class GlanceImagesTestCase(test.TestCase):
class GlanceImagesTestCase(test.ScenarioTestCase):
@mock.patch(GLANCE_IMAGES + "._generate_random_name")
@mock.patch(GLANCE_IMAGES + "._list_images")
@ -30,7 +30,7 @@ class GlanceImagesTestCase(test.TestCase):
def test_create_and_list_image(self, mock__create_image,
mock__list_images,
mock__generate_random_name):
glance_scenario = images.GlanceImages()
glance_scenario = images.GlanceImages(self.context)
mock__generate_random_name.return_value = "test-rally-image"
glance_scenario.create_and_list_image("cf", "url", "df",
fakearg="f")
@ -40,7 +40,7 @@ class GlanceImagesTestCase(test.TestCase):
@mock.patch(GLANCE_IMAGES + "._list_images")
def test_list_images(self, mock__list_images):
glance_scenario = images.GlanceImages()
glance_scenario = images.GlanceImages(self.context)
glance_scenario.list_images()
mock__list_images.assert_called_once_with()
@ -50,7 +50,7 @@ class GlanceImagesTestCase(test.TestCase):
def test_create_and_delete_image(
self, mock__create_image, mock__delete_image,
mock__generate_random_name):
glance_scenario = images.GlanceImages()
glance_scenario = images.GlanceImages(self.context)
fake_image = object()
mock__create_image.return_value = fake_image
mock__generate_random_name.return_value = "test-rally-image"
@ -65,7 +65,7 @@ class GlanceImagesTestCase(test.TestCase):
@mock.patch(GLANCE_IMAGES + "._create_image")
def test_create_image_and_boot_instances(
self, mock__create_image, mock__boot_servers):
glance_scenario = images.GlanceImages()
glance_scenario = images.GlanceImages(self.context)
fake_image = fakes.FakeImage()
fake_servers = [mock.Mock() for i in range(5)]
mock__create_image.return_value = fake_image

View File

@ -32,7 +32,7 @@ class GlanceScenarioTestCase(test.ScenarioTestCase):
self.image1 = mock.Mock()
def test_list_images(self):
scenario = utils.GlanceScenario()
scenario = utils.GlanceScenario(context=self.context)
return_images_list = scenario._list_images()
self.clients("glance").images.list.assert_called_once_with()
self.assertEqual(list(self.clients("glance").images.list.return_value),
@ -43,7 +43,7 @@ class GlanceScenarioTestCase(test.ScenarioTestCase):
def test_create_image(self):
image_location = tempfile.NamedTemporaryFile()
self.clients("glance").images.create.return_value = self.image
scenario = utils.GlanceScenario()
scenario = utils.GlanceScenario(context=self.context)
return_image = scenario._create_image("container_format",
image_location.name,
"disk_format")
@ -61,7 +61,7 @@ class GlanceScenarioTestCase(test.ScenarioTestCase):
def test_create_image_with_location(self):
self.clients("glance").images.create.return_value = self.image
scenario = utils.GlanceScenario()
scenario = utils.GlanceScenario(context=self.context)
return_image = scenario._create_image("container_format",
"image_location",
"disk_format")
@ -78,7 +78,7 @@ class GlanceScenarioTestCase(test.ScenarioTestCase):
"glance.create_image")
def test_delete_image(self):
scenario = utils.GlanceScenario()
scenario = utils.GlanceScenario(context=self.context)
scenario._delete_image(self.image)
self.image.delete.assert_called_once_with()
self.mock_wait_for_delete.mock.assert_called_once_with(

View File

@ -35,7 +35,7 @@ class HeatStacksTestCase(test.ScenarioTestCase):
@mock.patch(HEAT_STACKS + "._create_stack")
def test_create_and_list_stack(self, mock__create_stack, mock__list_stacks,
mock__generate_random_name):
heat_scenario = stacks.HeatStacks()
heat_scenario = stacks.HeatStacks(self.context)
mock__generate_random_name.return_value = "test-rally-stack"
heat_scenario.create_and_list_stack(
template_path=self.default_template,
@ -52,7 +52,7 @@ class HeatStacksTestCase(test.ScenarioTestCase):
def test_list_stack_and_resources(self, mock__list_stacks):
stack = mock.Mock()
mock__list_stacks.return_value = [stack]
heat_scenario = stacks.HeatStacks()
heat_scenario = stacks.HeatStacks(self.context)
heat_scenario.list_stacks_and_resources()
self.clients("heat").resources.list.assert_called_once_with(stack.id)
self._test_atomic_action_timer(
@ -62,7 +62,7 @@ class HeatStacksTestCase(test.ScenarioTestCase):
def test_list_stack_and_events(self, mock__list_stacks):
stack = mock.Mock()
mock__list_stacks.return_value = [stack]
heat_scenario = stacks.HeatStacks()
heat_scenario = stacks.HeatStacks(self.context)
heat_scenario.list_stacks_and_events()
self.clients("heat").events.list.assert_called_once_with(stack.id)
self._test_atomic_action_timer(
@ -74,7 +74,7 @@ class HeatStacksTestCase(test.ScenarioTestCase):
def test_create_and_delete_stack(
self, mock__create_stack, mock__delete_stack,
mock__generate_random_name):
heat_scenario = stacks.HeatStacks()
heat_scenario = stacks.HeatStacks(self.context)
fake_stack = object()
mock__create_stack.return_value = fake_stack
mock__generate_random_name.return_value = "test-rally-stack"
@ -97,7 +97,7 @@ class HeatStacksTestCase(test.ScenarioTestCase):
@mock.patch(HEAT_STACKS + "._create_stack")
def test_create_check_delete_stack(
self, mock__create_stack, mock__check_stack, mock__delete_stack):
heat_scenario = stacks.HeatStacks()
heat_scenario = stacks.HeatStacks(self.context)
heat_scenario.create_check_delete_stack(
template_path=self.default_template,
parameters=self.default_parameters,
@ -119,7 +119,7 @@ class HeatStacksTestCase(test.ScenarioTestCase):
def test_create_update_delete_stack(
self, mock__create_stack, mock__update_stack, mock__delete_stack,
mock__generate_random_name):
heat_scenario = stacks.HeatStacks()
heat_scenario = stacks.HeatStacks(self.context)
fake_stack = object()
mock__create_stack.return_value = fake_stack
mock__generate_random_name.return_value = "test-rally-stack"
@ -144,7 +144,7 @@ class HeatStacksTestCase(test.ScenarioTestCase):
mock__delete_stack.assert_called_once_with(fake_stack)
def test_create_stack_and_scale(self):
heat_scenario = stacks.HeatStacks()
heat_scenario = stacks.HeatStacks(self.context)
stack = mock.Mock()
heat_scenario._create_stack = mock.Mock(return_value=stack)
heat_scenario._scale_stack = mock.Mock()
@ -169,7 +169,7 @@ class HeatStacksTestCase(test.ScenarioTestCase):
def test_create_suspend_resume_delete_stack(
self, mock__create_stack, mock__suspend_stack, mock__resume_stack,
mock__delete_stack):
heat_scenario = stacks.HeatStacks()
heat_scenario = stacks.HeatStacks(self.context)
heat_scenario.create_suspend_resume_delete_stack(
template_path=self.default_template,
parameters=self.default_parameters,
@ -198,7 +198,7 @@ class HeatStacksTestCase(test.ScenarioTestCase):
def test_create_snapshot_restore_delete_stack(
self, mock__create_stack, mock__snapshot_stack,
mock__restore_stack, mock__delete_stack):
heat_scenario = stacks.HeatStacks()
heat_scenario = stacks.HeatStacks(self.context)
mock__snapshot_stack.return_value = {"id": "dummy_id"}
heat_scenario.create_snapshot_restore_delete_stack(
template_path=self.default_template,

View File

@ -28,14 +28,14 @@ class HeatScenarioTestCase(test.ScenarioTestCase):
def setUp(self):
super(HeatScenarioTestCase, self).setUp()
self.stack = mock.Mock()
self.scenario = utils.HeatScenario()
self.scenario = utils.HeatScenario(self.context)
self.default_template = "heat_template_version: 2013-05-23"
self.dummy_parameters = {"dummy_param": "dummy_key"}
self.dummy_files = ["dummy_file.yaml"]
self.dummy_environment = {"dummy_env": "dummy_env_value"}
def test_list_stacks(self):
scenario = utils.HeatScenario()
scenario = utils.HeatScenario(self.context)
return_stacks_list = scenario._list_stacks()
self.clients("heat").stacks.list.assert_called_once_with()
self.assertEqual(list(self.clients("heat").stacks.list.return_value),
@ -48,11 +48,10 @@ class HeatScenarioTestCase(test.ScenarioTestCase):
"stack": {"id": "test_id"}
}
self.clients("heat").stacks.get.return_value = self.stack
scenario = utils.HeatScenario()
return_stack = scenario._create_stack(self.default_template,
self.dummy_parameters,
self.dummy_files,
self.dummy_environment)
return_stack = self.scenario._create_stack(self.default_template,
self.dummy_parameters,
self.dummy_files,
self.dummy_environment)
args, kwargs = self.clients("heat").stacks.create.call_args
self.assertIn(self.dummy_parameters, kwargs.values())
self.assertIn(self.default_template, kwargs.values())
@ -68,12 +67,12 @@ class HeatScenarioTestCase(test.ScenarioTestCase):
self.mock_get_from_manager.mock.assert_called_once_with(
["CREATE_FAILED"])
self.assertEqual(self.mock_wait_for.mock.return_value, return_stack)
self._test_atomic_action_timer(scenario.atomic_actions(),
self._test_atomic_action_timer(self.scenario.atomic_actions(),
"heat.create_stack")
def test_update_stack(self):
self.clients("heat").stacks.update.return_value = None
scenario = utils.HeatScenario()
scenario = utils.HeatScenario(self.context)
scenario._update_stack(self.stack, self.default_template,
self.dummy_parameters, self.dummy_files,
self.dummy_environment)
@ -96,7 +95,7 @@ class HeatScenarioTestCase(test.ScenarioTestCase):
"heat.update_stack")
def test_check_stack(self):
scenario = utils.HeatScenario()
scenario = utils.HeatScenario(self.context)
scenario._check_stack(self.stack)
self.clients("heat").actions.check.assert_called_once_with(
self.stack.id)
@ -111,7 +110,7 @@ class HeatScenarioTestCase(test.ScenarioTestCase):
"heat.check_stack")
def test_delete_stack(self):
scenario = utils.HeatScenario()
scenario = utils.HeatScenario(self.context)
scenario._delete_stack(self.stack)
self.stack.delete.assert_called_once_with()
self.mock_wait_for_delete.mock.assert_called_once_with(
@ -124,7 +123,7 @@ class HeatScenarioTestCase(test.ScenarioTestCase):
"heat.delete_stack")
def test_suspend_stack(self):
scenario = utils.HeatScenario()
scenario = utils.HeatScenario(self.context)
scenario._suspend_stack(self.stack)
self.clients("heat").actions.suspend.assert_called_once_with(
self.stack.id)
@ -141,7 +140,7 @@ class HeatScenarioTestCase(test.ScenarioTestCase):
"heat.suspend_stack")
def test_resume_stack(self):
scenario = utils.HeatScenario()
scenario = utils.HeatScenario(self.context)
scenario._resume_stack(self.stack)
self.clients("heat").actions.resume.assert_called_once_with(
self.stack.id)
@ -158,7 +157,7 @@ class HeatScenarioTestCase(test.ScenarioTestCase):
"heat.resume_stack")
def test_snapshot_stack(self):
scenario = utils.HeatScenario()
scenario = utils.HeatScenario(self.context)
scenario._snapshot_stack(self.stack)
self.clients("heat").stacks.snapshot.assert_called_once_with(
self.stack.id)
@ -175,7 +174,7 @@ class HeatScenarioTestCase(test.ScenarioTestCase):
"heat.snapshot_stack")
def test_restore_stack(self):
scenario = utils.HeatScenario()
scenario = utils.HeatScenario(self.context)
scenario._restore_stack(self.stack, "dummy_id")
self.clients("heat").stacks.restore.assert_called_once_with(
self.stack.id, "dummy_id")
@ -196,14 +195,14 @@ class HeatScenarioTestCase(test.ScenarioTestCase):
mock.Mock(resource_type="OS::Nova::Server"),
mock.Mock(resource_type="OS::Nova::Server"),
mock.Mock(resource_type="OS::Heat::AutoScalingGroup")]
scenario = utils.HeatScenario()
scenario = utils.HeatScenario(self.context)
self.assertEqual(scenario._count_instances(self.stack), 2)
self.clients("heat").resources.list.assert_called_once_with(
self.stack.id,
nested_depth=1)
def test__scale_stack(self):
scenario = utils.HeatScenario()
scenario = utils.HeatScenario(self.context)
scenario._count_instances = mock.Mock(side_effect=[3, 3, 2])
scenario._stack_webhook = mock.Mock()
@ -225,7 +224,7 @@ class HeatScenarioTestCase(test.ScenarioTestCase):
@mock.patch("requests.post")
def test_stack_webhook(self, mock_post):
scenario = utils.HeatScenario()
scenario = utils.HeatScenario(self.context)
stack = mock.Mock(outputs=[
{"output_key": "output1", "output_value": "url1"},
{"output_key": "output2", "output_value": "url2"}])
@ -237,7 +236,7 @@ class HeatScenarioTestCase(test.ScenarioTestCase):
@mock.patch("requests.post")
def test_stack_webhook_invalid_output_key(self, mock_post):
scenario = utils.HeatScenario()
scenario = utils.HeatScenario(self.context)
stack = mock.Mock()
stack.outputs = [{"output_key": "output1", "output_value": "url1"},
{"output_key": "output2", "output_value": "url2"}]
@ -258,7 +257,7 @@ class HeatScenarioNegativeTestCase(test.ScenarioTestCase):
resource.stack_status = "CREATE_FAILED"
stack.manager.get.return_value = resource
self.clients("heat").stacks.get.return_value = stack
scenario = utils.HeatScenario()
scenario = utils.HeatScenario(context=self.context)
ex = self.assertRaises(exceptions.GetResourceErrorStatus,
scenario._create_stack, "stack_name")
self.assertIn("has CREATE_FAILED status", str(ex))
@ -269,7 +268,7 @@ class HeatScenarioNegativeTestCase(test.ScenarioTestCase):
resource.stack_status = "UPDATE_FAILED"
stack.manager.get.return_value = resource
self.clients("heat").stacks.get.return_value = stack
scenario = utils.HeatScenario()
scenario = utils.HeatScenario(context=self.context)
ex = self.assertRaises(exceptions.GetResourceErrorStatus,
scenario._update_stack, stack,
"heat_template_version: 2013-05-23")

View File

@ -22,7 +22,7 @@ from tests.unit import test
class IronicNodesTestCase(test.ScenarioTestCase):
def test_create_and_list_node(self):
scenario = nodes.IronicNodes()
scenario = nodes.IronicNodes(self.context)
scenario._create_node = mock.Mock()
scenario._list_nodes = mock.Mock()
fake_params = {
@ -44,7 +44,7 @@ class IronicNodesTestCase(test.ScenarioTestCase):
def test_create_and_delete_node(self):
fake_node = mock.Mock(uuid="fake_uuid")
scenario = nodes.IronicNodes()
scenario = nodes.IronicNodes(self.context)
scenario._create_node = mock.Mock(return_value=fake_node)
scenario._delete_node = mock.Mock()

View File

@ -27,7 +27,7 @@ class IronicScenarioTestCase(test.ScenarioTestCase):
def test__create_node(self, mock_generate_random_name):
mock_generate_random_name.return_value = "rally_fake_random_string"
self.admin_clients("ironic").node.create.return_value = "fake_node"
scenario = utils.IronicScenario()
scenario = utils.IronicScenario(self.context)
create_node = scenario._create_node(fake_param="foo")
self.assertEqual("fake_node", create_node)
@ -39,7 +39,7 @@ class IronicScenarioTestCase(test.ScenarioTestCase):
def test__delete_node(self):
mock_node_delete = mock.Mock()
self.admin_clients("ironic").node.delete = mock_node_delete
scenario = utils.IronicScenario()
scenario = utils.IronicScenario(self.context)
scenario._delete_node("fake_id")
self.admin_clients("ironic").node.delete.assert_called_once_with(
@ -49,7 +49,7 @@ class IronicScenarioTestCase(test.ScenarioTestCase):
def test__list_nodes(self):
self.admin_clients("ironic").node.list.return_value = ["fake"]
scenario = utils.IronicScenario()
scenario = utils.IronicScenario(self.context)
fake_params = {
"sort_dir": "foo1",
"associated": "foo2",

View File

@ -22,21 +22,23 @@ BASE = "rally.plugins.openstack.scenarios.keystone."
BASIC = BASE + "basic.KeystoneBasic."
class KeystoneBasicTestCase(test.TestCase):
class KeystoneBasicTestCase(test.ScenarioTestCase):
@staticmethod
def _get_context():
return {
context = test.get_test_context()
context.update({
"user": {
"id": "fake_user_id",
"endpoint": mock.MagicMock()
},
"tenant": {"id": "fake_tenant_id"}
}
})
return context
@mock.patch("rally.common.utils.generate_random_name")
def test_create_user(self, mock_generate_random_name):
scenario = basic.KeystoneBasic()
scenario = basic.KeystoneBasic(self.context)
scenario._user_create = mock.MagicMock()
scenario.create_user(name_length=20, password="tttt", tenant_id="id")
scenario._user_create.assert_called_once_with(name_length=20,
@ -47,7 +49,7 @@ class KeystoneBasicTestCase(test.TestCase):
def test_create_delete_user(self, mock_generate_random_name):
create_result = mock.MagicMock()
scenario = basic.KeystoneBasic()
scenario = basic.KeystoneBasic(self.context)
scenario._user_create = mock.MagicMock(return_value=create_result)
scenario._resource_delete = mock.MagicMock()
@ -59,7 +61,7 @@ class KeystoneBasicTestCase(test.TestCase):
scenario._resource_delete.assert_called_once_with(create_result)
def test_create_user_set_enabled_and_delete(self):
scenario = basic.KeystoneBasic()
scenario = basic.KeystoneBasic(self.context)
scenario._user_create = mock.Mock()
scenario._update_user_enabled = mock.Mock()
scenario._resource_delete = mock.Mock()
@ -75,7 +77,7 @@ class KeystoneBasicTestCase(test.TestCase):
@mock.patch("rally.common.utils.generate_random_name")
def test_create_tenant(self, mock_generate_random_name):
scenario = basic.KeystoneBasic()
scenario = basic.KeystoneBasic(self.context)
scenario._tenant_create = mock.MagicMock()
scenario.create_tenant(name_length=20, enabled=True)
scenario._tenant_create.assert_called_once_with(name_length=20,
@ -83,7 +85,7 @@ class KeystoneBasicTestCase(test.TestCase):
@mock.patch("rally.common.utils.generate_random_name")
def test_create_tenant_with_users(self, mock_generate_random_name):
scenario = basic.KeystoneBasic()
scenario = basic.KeystoneBasic(self.context)
fake_tenant = mock.MagicMock()
scenario._tenant_create = mock.MagicMock(return_value=fake_tenant)
scenario._users_create = mock.MagicMock()
@ -97,7 +99,7 @@ class KeystoneBasicTestCase(test.TestCase):
@mock.patch("rally.common.utils.generate_random_name")
def test_create_and_list_users(self, mock_generate_random_name):
scenario = basic.KeystoneBasic()
scenario = basic.KeystoneBasic(self.context)
scenario._user_create = mock.MagicMock()
scenario._list_users = mock.MagicMock()
scenario.create_and_list_users(name_length=20, password="tttt",
@ -109,7 +111,7 @@ class KeystoneBasicTestCase(test.TestCase):
@mock.patch("rally.common.utils.generate_random_name")
def test_create_and_list_tenants(self, mock_generate_random_name):
scenario = basic.KeystoneBasic()
scenario = basic.KeystoneBasic(self.context)
scenario._tenant_create = mock.MagicMock()
scenario._list_tenants = mock.MagicMock()
scenario.create_and_list_tenants(name_length=20, enabled=True)
@ -138,7 +140,7 @@ class KeystoneBasicTestCase(test.TestCase):
fake_tenant)
def test_create_and_delete_role(self):
scenario = basic.KeystoneBasic()
scenario = basic.KeystoneBasic(self.context)
fake_role = mock.MagicMock()
scenario._role_create = mock.MagicMock(return_value=fake_role)
scenario._resource_delete = mock.MagicMock()
@ -165,7 +167,7 @@ class KeystoneBasicTestCase(test.TestCase):
fake_tenant)
def _test_get_entities(self, service_name="keystone"):
scenario = basic.KeystoneBasic()
scenario = basic.KeystoneBasic(self.context)
fake_tenant = mock.MagicMock()
fake_user = mock.MagicMock()
fake_role = mock.MagicMock()
@ -211,7 +213,7 @@ class KeystoneBasicTestCase(test.TestCase):
self._test_get_entities(service_name=None)
def test_create_and_delete_service(self):
scenario = basic.KeystoneBasic()
scenario = basic.KeystoneBasic(self.context)
service_type = "test_service_type"
description = "test_description"
fake_service = mock.MagicMock()
@ -224,7 +226,7 @@ class KeystoneBasicTestCase(test.TestCase):
scenario._delete_service.assert_called_once_with(fake_service.id)
def test_create_update_and_delete_tenant(self):
scenario = basic.KeystoneBasic()
scenario = basic.KeystoneBasic(self.context)
fake_tenant = mock.MagicMock()
scenario._tenant_create = mock.MagicMock(return_value=fake_tenant)
scenario._update_tenant = mock.MagicMock()
@ -234,7 +236,7 @@ class KeystoneBasicTestCase(test.TestCase):
scenario._resource_delete.assert_called_once_with(fake_tenant)
def test_create_user_update_password(self):
scenario = basic.KeystoneBasic()
scenario = basic.KeystoneBasic(self.context)
fake_password = "pswd"
fake_user = mock.MagicMock()
scenario._user_create = mock.MagicMock(return_value=fake_user)
@ -249,7 +251,7 @@ class KeystoneBasicTestCase(test.TestCase):
fake_password)
def test_create_and_list_services(self):
scenario = basic.KeystoneBasic()
scenario = basic.KeystoneBasic(self.context)
service_type = "test_service_type"
description = "test_description"
fake_service = mock.MagicMock()

View File

@ -51,7 +51,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
@mock.patch("rally.common.utils.generate_random_name",
return_value="foobarov")
def test_user_create(self, mock_generate_random_name, mock_uuid4):
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
result = scenario._user_create()
self.assertEqual(
@ -67,7 +67,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
def test_update_user_enabled(self):
user = mock.Mock()
enabled = mock.Mock()
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._update_user_enabled(user, enabled)
self.admin_clients(
@ -79,7 +79,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
@mock.patch("rally.common.utils.generate_random_name")
def test_role_create(self, mock_generate_random_name):
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
result = scenario._role_create()
self.assertEqual(
@ -92,7 +92,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
def test_list_roles_for_user(self):
user = mock.MagicMock()
tenant = mock.MagicMock()
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._list_roles_for_user(user, tenant)
@ -106,7 +106,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
user = mock.MagicMock()
role = mock.MagicMock()
tenant = mock.MagicMock()
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._role_add(user=user.id, role=role.id, tenant=tenant.id)
@ -121,7 +121,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
resource = fakes.FakeResource()
resource.delete = mock.MagicMock()
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._resource_delete(resource)
resource.delete.assert_called_once_with()
r = "keystone.delete_%s" % resource.__class__.__name__.lower()
@ -131,7 +131,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
user = mock.MagicMock()
role = mock.MagicMock()
tenant = mock.MagicMock()
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._role_remove(user=user, role=role, tenant=tenant)
@ -144,7 +144,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
@mock.patch("rally.common.utils.generate_random_name")
def test_tenant_create(self, mock_generate_random_name):
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
result = scenario._tenant_create()
self.assertEqual(
@ -158,7 +158,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
service_type = "service_type"
description = "_description"
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._generate_random_name = mock.Mock()
result = scenario._service_create(service_type=service_type,
@ -177,7 +177,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
return_value="foobarov")
def test_tenant_create_with_users(self, mock_generate_random_name):
tenant = mock.MagicMock()
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._users_create(tenant, users_per_tenant=1, name_length=10)
@ -188,21 +188,21 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
"keystone.create_users")
def test_list_users(self):
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._list_users()
self.admin_clients("keystone").users.list.assert_called_once_with()
self._test_atomic_action_timer(scenario.atomic_actions(),
"keystone.list_users")
def test_list_tenants(self):
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._list_tenants()
self.admin_clients("keystone").tenants.list.assert_called_once_with()
self._test_atomic_action_timer(scenario.atomic_actions(),
"keystone.list_tenants")
def test_list_services(self):
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._list_services()
self.admin_clients("keystone").services.list.assert_called_once_with()
@ -211,7 +211,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
def test_delete_service(self):
service = mock.MagicMock()
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._delete_service(service_id=service.id)
self.admin_clients("keystone").services.delete.assert_called_once_with(
@ -221,7 +221,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
def test_get_tenant(self):
tenant = mock.MagicMock()
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._get_tenant(tenant_id=tenant.id)
self.admin_clients("keystone").tenants.get.assert_called_once_with(
@ -231,7 +231,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
def test_get_user(self):
user = mock.MagicMock()
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._get_user(user_id=user.id)
self.admin_clients("keystone").users.get.assert_called_once_with(
@ -241,7 +241,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
def test_get_role(self):
role = mock.MagicMock()
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._get_role(role_id=role.id)
self.admin_clients("keystone").roles.get.assert_called_once_with(
@ -251,7 +251,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
def test_get_service(self):
service = mock.MagicMock()
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._get_service(service_id=service.id)
self.admin_clients("keystone").services.get.assert_called_once_with(
@ -263,7 +263,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
tenant = mock.MagicMock()
description = tenant.name + "_description_updated_test"
name = tenant.name + "test_updated_test"
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._update_tenant(tenant=tenant, name=name,
description=description)
@ -275,7 +275,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
def test_update_user_password(self):
password = "pswd"
user = mock.MagicMock()
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
scenario._update_user_password(password=password, user_id=user.id)
@ -304,7 +304,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
"keystone.update_user_password")
def test_get_service_by_name(self):
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
svc_foo, svc_bar = mock.Mock(), mock.Mock()
scenario._list_services = mock.Mock(return_value=[svc_foo, svc_bar])
self.assertEqual(scenario._get_service_by_name(svc_bar.name), svc_bar)
@ -312,7 +312,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
@mock.patch(UTILS + "KeystoneScenario.clients")
def test_create_ec2credentials(self, mock_clients):
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
creds = mock.Mock()
mock_clients("keystone").ec2.create.return_value = creds
create_creds = scenario._create_ec2credentials("user_id",
@ -325,7 +325,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
@mock.patch(UTILS + "KeystoneScenario.clients")
def test_list_ec2credentials(self, mock_clients):
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
creds_list = mock.Mock()
mock_clients("keystone").ec2.list.return_value = creds_list
list_creds = scenario._list_ec2credentials("user_id")
@ -336,7 +336,7 @@ class KeystoneScenarioTestCase(test.ScenarioTestCase):
@mock.patch(UTILS + "KeystoneScenario.clients")
def test_delete_ec2credentials(self, mock_clients):
scenario = utils.KeystoneScenario()
scenario = utils.KeystoneScenario(self.context)
mock_clients("keystone").ec2.delete = mock.MagicMock()
scenario._delete_ec2credential("user_id", "access")
mock_clients("keystone").ec2.delete.assert_called_once_with("user_id",

View File

@ -21,7 +21,7 @@ from tests.unit import test
@ddt.ddt
class ManilaSharesTestCase(test.TestCase):
class ManilaSharesTestCase(test.ScenarioTestCase):
@ddt.data(
{"share_proto": "nfs", "size": 3},
@ -30,7 +30,7 @@ class ManilaSharesTestCase(test.TestCase):
)
def test_create_and_delete_share(self, params):
fake_share = mock.MagicMock()
scenario = shares.ManilaShares()
scenario = shares.ManilaShares(self.context)
scenario._create_share = mock.MagicMock(return_value=fake_share)
scenario.sleep_between = mock.MagicMock()
scenario._delete_share = mock.MagicMock()
@ -55,7 +55,7 @@ class ManilaSharesTestCase(test.TestCase):
)
@ddt.unpack
def test_list_shares(self, detailed=True, search_opts=None):
scenario = shares.ManilaShares()
scenario = shares.ManilaShares(self.context)
scenario._list_shares = mock.MagicMock()
scenario.list_shares(detailed=detailed, search_opts=search_opts)
@ -78,7 +78,7 @@ class ManilaSharesTestCase(test.TestCase):
)
def test_create_share_network_and_delete(self, params):
fake_sn = mock.MagicMock()
scenario = shares.ManilaShares()
scenario = shares.ManilaShares(self.context)
scenario._create_share_network = mock.MagicMock(return_value=fake_sn)
scenario._delete_share_network = mock.MagicMock()
expected_params = {
@ -110,7 +110,7 @@ class ManilaSharesTestCase(test.TestCase):
"nova_net_id": "foo_nova_net_id"},
)
def test_create_share_network_and_list(self, params):
scenario = shares.ManilaShares()
scenario = shares.ManilaShares(self.context)
scenario._create_share_network = mock.MagicMock()
scenario._list_share_networks = mock.MagicMock()
expected_create_params = {
@ -140,7 +140,7 @@ class ManilaSharesTestCase(test.TestCase):
{"search_opts": {"foo": "bar"}},
)
def test_list_share_servers(self, search_opts):
scenario = shares.ManilaShares()
scenario = shares.ManilaShares(self.context)
scenario.context = {"admin": {"endpoint": "fake_endpoint"}}
scenario._list_share_servers = mock.MagicMock()
@ -162,7 +162,7 @@ class ManilaSharesTestCase(test.TestCase):
)
def test_create_security_service_and_delete(self, params):
fake_ss = mock.MagicMock()
scenario = shares.ManilaShares()
scenario = shares.ManilaShares(self.context)
scenario._create_security_service = mock.MagicMock(
return_value=fake_ss)
scenario._delete_security_service = mock.MagicMock()
@ -186,7 +186,7 @@ class ManilaSharesTestCase(test.TestCase):
@ddt.data("ldap", "kerberos", "active_directory")
def test_attach_security_service_to_share_network(self,
security_service_type):
scenario = shares.ManilaShares()
scenario = shares.ManilaShares(self.context)
scenario._create_share_network = mock.MagicMock()
scenario._create_security_service = mock.MagicMock()
scenario._add_security_service_to_share_network = mock.MagicMock()

View File

@ -28,7 +28,7 @@ class ManilaScenarioTestCase(test.ScenarioTestCase):
def setUp(self):
super(ManilaScenarioTestCase, self).setUp()
self.scenario = utils.ManilaScenario()
self.scenario = utils.ManilaScenario(self.context)
def test__create_share(self):
fake_name = "fake_name"

View File

@ -22,7 +22,7 @@ MISTRAL_UTILS = "rally.plugins.openstack.scenarios.mistral.utils"
class MistralScenarioTestCase(test.ScenarioTestCase):
def test_list_workbooks(self):
scenario = utils.MistralScenario()
scenario = utils.MistralScenario(context=self.context)
return_wbs_list = scenario._list_workbooks()
self.assertEqual(
self.clients("mistral").workbooks.list.return_value,
@ -32,14 +32,14 @@ class MistralScenarioTestCase(test.ScenarioTestCase):
def test_create_workbook(self):
definition = "version: \"2.0\"\nname: wb"
scenario = utils.MistralScenario()
scenario = utils.MistralScenario(context=self.context)
self.assertEqual(scenario._create_workbook(definition),
self.clients("mistral").workbooks.create.return_value)
self._test_atomic_action_timer(scenario.atomic_actions(),
"mistral.create_workbook")
def test_delete_workbook(self):
scenario = utils.MistralScenario()
scenario = utils.MistralScenario(context=self.context)
scenario._delete_workbook("wb_name")
self.clients("mistral").workbooks.delete.assert_called_once_with(
"wb_name")

View File

@ -22,17 +22,17 @@ MISTRAL_WBS = ("rally.plugins.openstack.scenarios."
"mistral.workbooks.MistralWorkbooks")
class MistralWorkbooksTestCase(test.TestCase):
class MistralWorkbooksTestCase(test.ScenarioTestCase):
@mock.patch(MISTRAL_WBS + "._list_workbooks")
def test_list_workbooks(self, mock__list_workbooks):
mistral_scenario = workbooks.MistralWorkbooks()
mistral_scenario = workbooks.MistralWorkbooks(self.context)
mistral_scenario.list_workbooks()
mock__list_workbooks.assert_called_once_with()
@mock.patch(MISTRAL_WBS + "._create_workbook")
def test_create_workbook(self, mock__create_workbook):
mistral_scenario = workbooks.MistralWorkbooks()
mistral_scenario = workbooks.MistralWorkbooks(self.context)
definition = "---\nversion: \"2.0\"\nname: wb"
fake_wb = mock.MagicMock()
fake_wb.name = "wb"
@ -46,7 +46,7 @@ class MistralWorkbooksTestCase(test.TestCase):
def test_create_delete_workbook(self,
mock__create_workbook,
mock__delete_workbook):
mistral_scenario = workbooks.MistralWorkbooks()
mistral_scenario = workbooks.MistralWorkbooks(self.context)
definition = "---\nversion: \"2.0\"\nname: wb"
fake_wb = mock.MagicMock()
fake_wb.name = "wb"

View File

@ -23,10 +23,10 @@ MURANO_SCENARIO = ("rally.plugins.openstack.scenarios.murano."
"environments.MuranoEnvironments")
class MuranoEnvironmentsTestCase(test.TestCase):
class MuranoEnvironmentsTestCase(test.ScenarioTestCase):
def _get_context(self):
return {
self.context.update({
"tenant": {
"packages": [mock.MagicMock(fully_qualified_name="fake")]
},
@ -41,11 +41,12 @@ class MuranoEnvironmentsTestCase(test.TestCase):
"io.murano.apps.HelloReporter.zip")
}
}
}
})
return self.context
@mock.patch(MURANO_SCENARIO + "._list_environments")
def test_list_environments(self, mock__list_environments):
scenario = environments.MuranoEnvironments()
scenario = environments.MuranoEnvironments(self.context)
scenario._list_environments()
mock__list_environments.assert_called_once_with()
@ -56,7 +57,7 @@ class MuranoEnvironmentsTestCase(test.TestCase):
def test_create_and_delete_environment(
self, mock__generate_random_name, mock__create_environment,
mock__delete_environment, mock__create_session):
scenario = environments.MuranoEnvironments()
scenario = environments.MuranoEnvironments(self.context)
fake_environment = mock.Mock(id="fake_id")
mock__create_environment.return_value = fake_environment
mock__generate_random_name.return_value = "foo"
@ -79,7 +80,7 @@ class MuranoEnvironmentsTestCase(test.TestCase):
fake_session = mock.Mock(id="fake_session_id")
mock__create_session.return_value = fake_session
scenario = environments.MuranoEnvironments()
scenario = environments.MuranoEnvironments(self.context)
scenario.context = self._get_context()
scenario.context["tenants"] = {
"fake_tenant_id": {

View File

@ -27,7 +27,7 @@ class MuranoScenarioTestCase(test.ScenarioTestCase):
def test_list_environments(self):
self.clients("murano").environments.list.return_value = []
scenario = utils.MuranoScenario()
scenario = utils.MuranoScenario(context=self.context)
return_environments_list = scenario._list_environments()
self.assertEqual([], return_environments_list)
self._test_atomic_action_timer(scenario.atomic_actions(),
@ -36,7 +36,7 @@ class MuranoScenarioTestCase(test.ScenarioTestCase):
def test_create_environments(self):
mock_create = mock.Mock(return_value="foo_env")
self.clients("murano").environments.create = mock_create
scenario = utils.MuranoScenario()
scenario = utils.MuranoScenario(context=self.context)
create_env = scenario._create_environment("env_name")
self.assertEqual("foo_env", create_env)
mock_create.assert_called_once_with({"name": "env_name"})
@ -46,7 +46,7 @@ class MuranoScenarioTestCase(test.ScenarioTestCase):
def test_delete_environment(self):
environment = mock.Mock(id="id")
self.clients("murano").environments.delete.return_value = "ok"
scenario = utils.MuranoScenario()
scenario = utils.MuranoScenario(context=self.context)
scenario._delete_environment(environment)
self.clients("murano").environments.delete.assert_called_once_with(
environment.id
@ -63,7 +63,7 @@ class MuranoScenarioTestCase(test.ScenarioTestCase):
def test_create_session(self):
self.clients("murano").sessions.configure.return_value = "sess"
scenario = utils.MuranoScenario()
scenario = utils.MuranoScenario(context=self.context)
create_sess = scenario._create_session("id")
self.assertEqual("sess", create_sess)
self._test_atomic_action_timer(scenario.atomic_actions(),
@ -73,7 +73,7 @@ class MuranoScenarioTestCase(test.ScenarioTestCase):
self.clients("murano").services.post.return_value = "app"
mock_env = mock.Mock(id="ip")
mock_sess = mock.Mock(id="ip")
scenario = utils.MuranoScenario()
scenario = utils.MuranoScenario(context=self.context)
create_app = scenario._create_service(mock_env, mock_sess,
"fake_full_name",
@ -87,7 +87,7 @@ class MuranoScenarioTestCase(test.ScenarioTestCase):
environment = mock.Mock(id="id")
session = mock.Mock(id="id")
self.clients("murano").sessions.deploy.return_value = "ok"
scenario = utils.MuranoScenario()
scenario = utils.MuranoScenario(context=self.context)
scenario._deploy_environment(environment, session)
self.clients("murano").sessions.deploy.assert_called_once_with(

View File

@ -21,7 +21,8 @@ from tests.unit import test
class NeutronLoadbalancerv1TestCase(test.TestCase):
def _get_context(self):
return {
context = test.get_test_context()
context.update({
"user": {
"id": "fake_user",
"tenant_id": "fake_tenant",
@ -29,7 +30,8 @@ class NeutronLoadbalancerv1TestCase(test.TestCase):
},
"tenant": {"id": "fake_tenant",
"networks": [{"id": "fake_net",
"subnets": ["fake_subnet"]}]}}
"subnets": ["fake_subnet"]}]}})
return context
def _get_context_pools(self):
context = self._get_context()

View File

@ -28,7 +28,7 @@ class NeutronNetworksTestCase(test.ScenarioTestCase):
@mock.patch(NEUTRON_NETWORKS + "._create_network")
def test_create_and_list_networks(self, mock__create_network,
mock__list_networks):
neutron_scenario = network.NeutronNetworks()
neutron_scenario = network.NeutronNetworks(self.context)
# Default options
network_create_args = {}
@ -58,7 +58,7 @@ class NeutronNetworksTestCase(test.ScenarioTestCase):
def test_create_and_update_networks(self,
mock__create_network,
mock__update_network):
scenario = network.NeutronNetworks()
scenario = network.NeutronNetworks(self.context)
network_update_args = {"name": "_updated", "admin_state_up": True}
@ -91,7 +91,7 @@ class NeutronNetworksTestCase(test.ScenarioTestCase):
@mock.patch(NEUTRON_NETWORKS + "._create_network")
def test_create_and_delete_networks(self, mock__create_network,
mock__delete_network):
neutron_scenario = network.NeutronNetworks()
neutron_scenario = network.NeutronNetworks(self.context)
# Default options
network_create_args = {}
@ -114,7 +114,7 @@ class NeutronNetworksTestCase(test.ScenarioTestCase):
def test_create_and_list_subnets(self,
mock__create_network_and_subnets,
mock__list_subnets):
scenario = network.NeutronNetworks()
scenario = network.NeutronNetworks(self.context)
subnets_per_network = 4
subnet_cidr_start = "default_cidr"
@ -147,7 +147,7 @@ class NeutronNetworksTestCase(test.ScenarioTestCase):
def test_create_and_update_subnets(self,
mock__create_network_and_subnets,
mock__update_subnet):
scenario = network.NeutronNetworks()
scenario = network.NeutronNetworks(self.context)
subnets_per_network = 1
subnet_cidr_start = "default_cidr"
net = {
@ -198,7 +198,7 @@ class NeutronNetworksTestCase(test.ScenarioTestCase):
def test_create_and_delete_subnets(self,
mock__create_network_and_subnets,
mock__delete_subnet):
scenario = network.NeutronNetworks()
scenario = network.NeutronNetworks(self.context)
net = {
"network": {
"id": "network-id"
@ -248,7 +248,7 @@ class NeutronNetworksTestCase(test.ScenarioTestCase):
mock__create_network_and_subnets,
mock__create_router,
mock__list_routers):
scenario = network.NeutronNetworks()
scenario = network.NeutronNetworks(self.context)
subnets_per_network = 1
subnet_cidr_start = "default_cidr"
@ -325,7 +325,7 @@ class NeutronNetworksTestCase(test.ScenarioTestCase):
mock__create_network_and_subnets,
mock__create_router,
mock__update_router):
scenario = network.NeutronNetworks()
scenario = network.NeutronNetworks(self.context)
subnets_per_network = 1
subnet_cidr_start = "default_cidr"
@ -413,7 +413,7 @@ class NeutronNetworksTestCase(test.ScenarioTestCase):
mock__create_network_and_subnets,
mock__create_router,
mock__delete_router):
scenario = network.NeutronNetworks()
scenario = network.NeutronNetworks(self.context)
subnets_per_network = 1
subnet_cidr_start = "default_cidr"
@ -496,7 +496,7 @@ class NeutronNetworksTestCase(test.ScenarioTestCase):
mock__create_port,
mock__list_ports,
mock__generate_random_name):
scenario = network.NeutronNetworks()
scenario = network.NeutronNetworks(self.context)
mock__generate_random_name.return_value = "random-name"
net = {"network": {"id": "fake-id"}}
mock__create_network.return_value = net
@ -544,7 +544,7 @@ class NeutronNetworksTestCase(test.ScenarioTestCase):
mock__create_port,
mock__update_port,
mock__generate_random_name):
scenario = network.NeutronNetworks()
scenario = network.NeutronNetworks(self.context)
mock__generate_random_name.return_value = "random-name"
ports_per_network = 10
@ -593,7 +593,7 @@ class NeutronNetworksTestCase(test.ScenarioTestCase):
mock__create_port,
mock__delete_port,
mock__generate_random_name):
scenario = network.NeutronNetworks()
scenario = network.NeutronNetworks(self.context)
mock__generate_random_name.return_value = "random-name"
net = {"network": {"id": "fake-id"}}
mock__create_network.return_value = net

View File

@ -31,7 +31,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
@mock.patch(NEUTRON_UTILS + "NeutronScenario._generate_random_name")
def test_create_network(self, mock__generate_random_name):
neutron_scenario = utils.NeutronScenario()
neutron_scenario = utils.NeutronScenario(self.context)
random_name = "random_name"
mock__generate_random_name.return_value = random_name
self.clients("neutron").create_network.return_value = self.network
@ -46,7 +46,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
"neutron.create_network")
def test_list_networks(self):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
networks_list = []
networks_dict = {"networks": networks_list}
self.clients("neutron").list_networks.return_value = networks_dict
@ -56,7 +56,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
"neutron.list_networks")
def test_update_network(self):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
scenario._generate_random_name = mock.Mock()
expected_network = {
@ -81,7 +81,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
"neutron.update_network")
def test_delete_network(self):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
network_create_args = {}
network = scenario._create_network(network_create_args)
@ -92,7 +92,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
@mock.patch(NEUTRON_UTILS + "NeutronScenario._generate_random_name",
return_value="test_subnet")
def test_create_subnet(self, mock__generate_random_name):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(self.context)
network_id = "fake-id"
start_cidr = "192.168.0.0/24"
@ -129,14 +129,14 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
self.clients("neutron").list_subnets.return_value = {
"subnets": subnets
}
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
result = scenario._list_subnets()
self.assertEqual(subnets, result)
self._test_atomic_action_timer(scenario.atomic_actions(),
"neutron.list_subnets")
def test_update_subnet(self):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
scenario._generate_random_name = mock.Mock()
expected_subnet = {
"subnet": {
@ -159,7 +159,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
"neutron.update_subnet")
def test_delete_subnet(self):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
network = scenario._create_network({})
subnet = scenario._create_subnet(network, {})
@ -170,7 +170,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
@mock.patch(NEUTRON_UTILS + "NeutronScenario._generate_random_name")
def test_create_router_default(self, mock__generate_random_name):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(self.context)
router = mock.Mock()
mock__generate_random_name.return_value = "random_name"
self.clients("neutron").create_router.return_value = router
@ -222,7 +222,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
"neutron.create_router")
def test_create_router_explicit(self):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(self.context)
router = mock.Mock()
self.clients("neutron").create_router.return_value = router
@ -236,7 +236,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
"neutron.create_router")
def test_list_routers(self):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
routers = [mock.Mock()]
self.clients("neutron").list_routers.return_value = {
"routers": routers}
@ -245,7 +245,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
"neutron.list_routers")
def test_update_router(self):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
scenario._generate_random_name = mock.Mock()
expected_router = {
@ -276,7 +276,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
"neutron.update_router")
def test_delete_router(self):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
router = scenario._create_router({})
scenario._delete_router(router)
self.clients("neutron").delete_router.assert_called_once_with(
@ -287,7 +287,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
def test_remove_interface_router(self):
subnet = {"name": "subnet-name", "id": "subnet-id"}
router_data = {"id": 1}
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
router = scenario._create_router(router_data)
scenario._add_interface_router(subnet, router)
scenario._remove_interface_router(subnet, router)
@ -302,7 +302,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
self.assertEqual(utils.NeutronScenario.SUBNET_IP_VERSION, 4)
def test_create_port(self):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(self.context)
scenario._generate_random_name = mock.Mock()
net_id = "network-id"
@ -332,7 +332,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
).create_port.assert_called_once_with(expected_port_args)
def test_list_ports(self):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
ports = [{"name": "port1"}, {"name": "port2"}]
self.clients("neutron").list_ports.return_value = {"ports": ports}
self.assertEqual(ports, scenario._list_ports())
@ -340,7 +340,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
"neutron.list_ports")
def test_update_port(self):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
scenario._generate_random_name = mock.Mock()
expected_port = {
@ -373,7 +373,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
"neutron.update_port")
def test_delete_port(self):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
network = scenario._create_network({})
port = scenario._create_port(network, {})
@ -399,7 +399,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
def test_create_network_and_subnets(self,
mock__create_network,
mock__create_subnet):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
network_create_args = {}
subnet_create_args = {}
subnets_per_network = 4
@ -432,7 +432,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
"10.10.10.0/24")] * subnets_per_network)
def test_delete_v1_pool(self):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
pool = {"pool": {"id": "fake-id"}}
scenario._delete_v1_pool(pool["pool"])
@ -442,7 +442,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
"neutron.delete_pool")
def test_update_pool(self):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
scenario._generate_random_name = mock.Mock()
expected_pool = {
@ -467,7 +467,7 @@ class NeutronScenarioTestCase(test.ScenarioTestCase):
"neutron.update_pool")
def test_list_v1_pools(self):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
pools_list = []
pools_dict = {"pools": pools_list}
self.clients("neutron").list_pools.return_value = pools_dict
@ -522,7 +522,7 @@ class NeutronScenarioFunctionalTestCase(test.FakeClientsScenarioTestCase):
@mock.patch(NEUTRON_UTILS + "network_wrapper.generate_cidr")
def test_functional_create_network_and_subnets(self, mock_generate_cidr):
scenario = utils.NeutronScenario()
scenario = utils.NeutronScenario(context=self.context)
network_create_args = {}
subnet_create_args = {}
subnets_per_network = 5
@ -593,7 +593,7 @@ class NeutronLoadbalancerScenarioTestCase(test.ScenarioTestCase):
@ddt.unpack
def test__create_lb_pool(self, subnet_id=None, atomic_action=True,
pool_create_args=None):
neutron_scenario = utils.NeutronScenario()
neutron_scenario = utils.NeutronScenario(self.context)
pool = {"pool": {"id": "pool-id"}}
pool_create_args = pool_create_args or {}
if pool_create_args.get("name") is None:

View File

@ -23,9 +23,9 @@ NOVA_HYPERVISORS_MODULE = "rally.plugins.openstack.scenarios.nova.hypervisors"
NOVA_HYPERVISORS = NOVA_HYPERVISORS_MODULE + ".NovaHypervisors"
class NovaHypervisorsTestCase(test.TestCase):
class NovaHypervisorsTestCase(test.ScenarioTestCase):
def test_list_hypervisors(self):
scenario = hypervisors.NovaHypervisors()
scenario = hypervisors.NovaHypervisors(self.context)
scenario._list_hypervisors = mock.Mock()
scenario.list_hypervisors(detailed=False)
scenario._list_hypervisors.assert_called_once_with(False)

View File

@ -19,10 +19,10 @@ from rally.plugins.openstack.scenarios.nova import keypairs
from tests.unit import test
class NovaKeypairTestCase(test.TestCase):
class NovaKeypairTestCase(test.ScenarioTestCase):
def test_create_and_list_keypairs(self):
scenario = keypairs.NovaKeypair()
scenario = keypairs.NovaKeypair(self.context)
scenario._generate_random_name = mock.MagicMock(return_value="name")
scenario._create_keypair = mock.MagicMock(return_value="foo_keypair")
scenario._list_keypairs = mock.MagicMock()
@ -33,7 +33,7 @@ class NovaKeypairTestCase(test.TestCase):
scenario._list_keypairs.assert_called_once_with()
def test_create_and_delete_keypair(self):
scenario = keypairs.NovaKeypair()
scenario = keypairs.NovaKeypair(self.context)
scenario._generate_random_name = mock.MagicMock(return_value="name")
scenario._create_keypair = mock.MagicMock(return_value="foo_keypair")
scenario._delete_keypair = mock.MagicMock()
@ -44,7 +44,7 @@ class NovaKeypairTestCase(test.TestCase):
scenario._delete_keypair.assert_called_once_with("foo_keypair")
def test_boot_and_delete_server_with_keypair(self):
scenario = keypairs.NovaKeypair()
scenario = keypairs.NovaKeypair(self.context)
scenario._generate_random_name = mock.MagicMock(return_value="name")
scenario._create_keypair = mock.MagicMock(return_value="foo_keypair")
scenario._boot_server = mock.MagicMock(return_value="foo_server")

View File

@ -30,7 +30,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
def test_boot_rescue_unrescue(self):
actions = [{"rescue_unrescue": 5}]
fake_server = mock.MagicMock()
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._boot_server = mock.MagicMock(return_value=fake_server)
scenario._generate_random_name = mock.MagicMock(return_value="name")
scenario._rescue_server = mock.MagicMock()
@ -54,7 +54,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
def test_boot_stop_start(self):
actions = [{"stop_start": 5}]
fake_server = mock.MagicMock()
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._boot_server = mock.MagicMock(return_value=fake_server)
scenario._generate_random_name = mock.MagicMock(return_value="name")
scenario._start_server = mock.MagicMock()
@ -79,7 +79,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
def test_multiple_bounce_actions(self):
actions = [{"hard_reboot": 5}, {"stop_start": 8}]
fake_server = mock.MagicMock()
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._boot_server = mock.MagicMock(return_value=fake_server)
scenario._delete_server = mock.MagicMock()
@ -109,7 +109,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
image = fakes.FakeImage()
flavor = fakes.FakeFlavor()
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._boot_server = mock.Mock(return_value=server)
scenario._lock_server = mock.Mock(side_effect=lambda s: s.lock())
scenario._unlock_server = mock.Mock(side_effect=lambda s: s.unlock())
@ -127,7 +127,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
def test_validate_actions(self):
actions = [{"hardd_reboot": 6}]
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
self.assertRaises(rally_exceptions.InvalidConfigException,
scenario.boot_and_bounce_server,
@ -152,7 +152,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
def _verify_reboot(self, soft=True):
actions = [{"soft_reboot" if soft else "hard_reboot": 5}]
fake_server = mock.MagicMock()
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._reboot_server = mock.MagicMock()
scenario._soft_reboot_server = mock.MagicMock()
@ -186,7 +186,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
def test_boot_and_delete_server(self):
fake_server = object()
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._generate_random_name = mock.MagicMock(return_value="name")
scenario._boot_server = mock.MagicMock(return_value=fake_server)
scenario._delete_server = mock.MagicMock()
@ -201,7 +201,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
force=False)
def test_boot_and_delete_multiple_servers(self):
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._boot_servers = mock.Mock()
scenario._delete_servers = mock.Mock()
scenario.sleep_between = mock.Mock()
@ -219,7 +219,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
scenario._boot_servers.return_value, force=False)
def test_boot_and_list_server(self):
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._generate_random_name = mock.MagicMock(return_value="name")
scenario._boot_server = mock.MagicMock()
scenario._list_servers = mock.MagicMock()
@ -233,7 +233,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
def test_suspend_and_resume_server(self):
fake_server = object()
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._generate_random_name = mock.MagicMock(return_value="name")
scenario._boot_server = mock.MagicMock(return_value=fake_server)
scenario._suspend_server = mock.MagicMock()
@ -253,7 +253,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
def test_pause_and_unpause_server(self):
fake_server = object()
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._generate_random_name = mock.MagicMock(return_value="name")
scenario._boot_server = mock.MagicMock(return_value=fake_server)
scenario._pause_server = mock.MagicMock()
@ -272,7 +272,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
def test_shelve_and_unshelve_server(self):
fake_server = mock.MagicMock()
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._boot_server = mock.MagicMock(return_value=fake_server)
scenario._shelve_server = mock.MagicMock()
scenario._unshelve_server = mock.MagicMock()
@ -289,14 +289,14 @@ class NovaServersTestCase(test.ScenarioTestCase):
force=False)
def test_list_servers(self):
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._list_servers = mock.MagicMock()
scenario.list_servers(True)
scenario._list_servers.assert_called_once_with(True)
def test_boot_server_from_volume_and_delete(self):
fake_server = object()
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._boot_server = mock.MagicMock(return_value=fake_server)
scenario._generate_random_name = mock.MagicMock(return_value="name")
scenario.sleep_between = mock.MagicMock()
@ -321,7 +321,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
def _prepare_boot(self, nic=None, assert_nic=False):
fake_server = mock.MagicMock()
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._boot_server = mock.MagicMock(return_value=fake_server)
scenario._generate_random_name = mock.MagicMock(return_value="name")
@ -357,7 +357,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
fake_image = fakes.FakeImageManager()._create()
fake_image.id = "image_id"
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._generate_random_name = mock.MagicMock(return_value="name")
scenario._boot_server = mock.MagicMock(return_value=fake_server)
scenario._create_image = mock.MagicMock(return_value=fake_image)
@ -382,7 +382,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
flavor = mock.MagicMock()
to_flavor = mock.MagicMock()
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._generate_random_name = mock.MagicMock(return_value="name")
scenario._boot_server = mock.MagicMock(return_value=fake_server)
scenario._resize_confirm = mock.MagicMock()
@ -409,7 +409,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
def test_boot_and_live_migrate_server(self):
fake_server = mock.MagicMock()
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._generate_random_name = mock.MagicMock(return_value="name")
scenario._boot_server = mock.MagicMock(return_value=fake_server)
scenario.sleep_between = mock.MagicMock()
@ -436,7 +436,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
def test_boot_server_from_volume_and_live_migrate(self):
fake_server = mock.MagicMock()
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._generate_random_name = mock.MagicMock(return_value="name")
scenario._boot_server = mock.MagicMock(return_value=fake_server)
scenario.sleep_between = mock.MagicMock()
@ -475,7 +475,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
fake_volume = mock.MagicMock()
fake_server = mock.MagicMock()
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._attach_volume = mock.MagicMock()
scenario._detach_volume = mock.MagicMock()
@ -516,7 +516,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
def _test_boot_and_migrate_server(self, confirm=False):
fake_server = mock.MagicMock()
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._generate_random_name = mock.MagicMock(return_value="name")
scenario._boot_server = mock.MagicMock(return_value=fake_server)
scenario._stop_server = mock.MagicMock()
@ -553,7 +553,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
self._test_boot_and_migrate_server(confirm=False)
def test_boot_and_rebuild_server(self):
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
scenario._boot_server = mock.Mock()
scenario._rebuild_server = mock.Mock()
scenario._delete_server = mock.Mock()
@ -572,7 +572,7 @@ class NovaServersTestCase(test.ScenarioTestCase):
@mock.patch(NOVA_SERVERS_MODULE + ".network_wrapper.wrap")
def test_boot_and_associate_floating_ip(self, mock_wrap):
scenario = servers.NovaServers()
scenario = servers.NovaServers(self.context)
server = mock.Mock()
scenario._boot_server = mock.Mock(return_value=server)
scenario._associate_floating_ip = mock.Mock()

View File

@ -38,11 +38,24 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
self.floating_ip = mock.Mock()
self.image = mock.Mock()
self.keypair = mock.Mock()
self.context["iteration"] = 3
self.context["config"] = {"users": {"tenants": 2}}
def _context_with_networks(self, networks):
retval = {"tenant": {"networks": networks}}
retval.update(self.context)
return retval
def _context_with_secgroup(self, secgroup):
retval = {"user": {"secgroup": secgroup,
"endpoint": mock.MagicMock()}}
retval.update(self.context)
return retval
def test__list_servers(self):
servers_list = []
self.clients("nova").servers.list.return_value = servers_list
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(self.context)
return_servers_list = nova_scenario._list_servers(True)
self.assertEqual(servers_list, return_servers_list)
self._test_atomic_action_timer(nova_scenario.atomic_actions(),
@ -83,7 +96,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
self.clients("nova").servers.create.return_value = self.server
if context is None:
context = {}
context = self.context
context.setdefault("user", {}).setdefault("endpoint", mock.MagicMock())
context.setdefault("config", {})
@ -129,13 +142,13 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
def test__boot_server_with_network_exception(self):
self.clients("nova").servers.create.return_value = self.server
nova_scenario = utils.NovaScenario(
context={"tenant": {"networks": None}})
context=self._context_with_networks(None))
self.assertRaises(TypeError, nova_scenario._boot_server,
"image_id", "flavor_id",
auto_assign_nic=True)
def test__suspend_server(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._suspend_server(self.server)
self.server.suspend.assert_called_once_with()
self.mock_wait_for.mock.assert_called_once_with(
@ -150,7 +163,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.suspend_server")
def test__resume_server(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._resume_server(self.server)
self.server.resume.assert_called_once_with()
self.mock_wait_for.mock.assert_called_once_with(
@ -165,7 +178,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.resume_server")
def test__pause_server(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._pause_server(self.server)
self.server.pause.assert_called_once_with()
self.mock_wait_for.mock.assert_called_once_with(
@ -180,7 +193,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.pause_server")
def test__unpause_server(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._unpause_server(self.server)
self.server.unpause.assert_called_once_with()
self.mock_wait_for.mock.assert_called_once_with(
@ -195,7 +208,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.unpause_server")
def test__shelve_server(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._shelve_server(self.server)
self.server.shelve.assert_called_once_with()
self.mock_wait_for.mock.assert_called_once_with(
@ -210,7 +223,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.shelve_server")
def test__unshelve_server(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._unshelve_server(self.server)
self.server.unshelve.assert_called_once_with()
self.mock_wait_for.mock.assert_called_once_with(
@ -226,7 +239,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
def test__create_image(self):
self.clients("nova").images.get.return_value = self.image
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
return_image = nova_scenario._create_image(self.server)
self.mock_wait_for.mock.assert_called_once_with(
self.image,
@ -242,7 +255,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.create_image")
def test__default_delete_server(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._delete_server(self.server)
self.server.delete.assert_called_once_with()
self.mock_wait_for_delete.mock.assert_called_once_with(
@ -255,7 +268,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.delete_server")
def test__force_delete_server(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._delete_server(self.server, force=True)
self.server.force_delete.assert_called_once_with()
self.mock_wait_for_delete.mock.assert_called_once_with(
@ -268,7 +281,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.force_delete_server")
def test__reboot_server(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._reboot_server(self.server)
self.server.reboot.assert_called_once_with(reboot_type="HARD")
self.mock_wait_for.mock.assert_called_once_with(
@ -283,7 +296,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.reboot_server")
def test__soft_reboot_server(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._soft_reboot_server(self.server)
self.server.reboot.assert_called_once_with(reboot_type="SOFT")
self.mock_wait_for.mock.assert_called_once_with(
@ -298,7 +311,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.soft_reboot_server")
def test__rebuild_server(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._rebuild_server(self.server, "img", fakearg="fakearg")
self.server.rebuild.assert_called_once_with("img", fakearg="fakearg")
self.mock_wait_for.mock.assert_called_once_with(
@ -313,7 +326,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.rebuild_server")
def test__start_server(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._start_server(self.server)
self.server.start.assert_called_once_with()
self.mock_wait_for.mock.assert_called_once_with(
@ -328,7 +341,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.start_server")
def test__stop_server(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._stop_server(self.server)
self.server.stop.assert_called_once_with()
self.mock_wait_for.mock.assert_called_once_with(
@ -343,7 +356,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.stop_server")
def test__rescue_server(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._rescue_server(self.server)
self.server.rescue.assert_called_once_with()
self.mock_wait_for.mock.assert_called_once_with(
@ -358,7 +371,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.rescue_server")
def test__unrescue_server(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._unrescue_server(self.server)
self.server.unrescue.assert_called_once_with()
self.mock_wait_for.mock.assert_called_once_with(
@ -374,7 +387,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
def _test_delete_servers(self, force=False):
servers = [self.server, self.server1]
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._delete_servers(servers, force=force)
check_interval = CONF.benchmark.nova_server_delete_poll_interval
expected = []
@ -403,7 +416,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
self._test_delete_servers(force=True)
def test__delete_image(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._delete_image(self.image)
self.image.delete.assert_called_once_with()
self.mock_wait_for_delete.mock.assert_called_once_with(
@ -429,7 +442,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
auto_assign_nic=False, **kwargs):
servers = [mock.Mock() for i in range(instances_amount)]
self.clients("nova").servers.list.return_value = servers
scenario = utils.NovaScenario()
scenario = utils.NovaScenario(context=self.context)
scenario._generate_random_name = mock.Mock()
scenario._pick_random_nic = mock.Mock()
@ -471,7 +484,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.boot_servers")
def test__associate_floating_ip(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._associate_floating_ip(self.server, self.floating_ip)
self.server.add_floating_ip.assert_called_once_with(self.floating_ip,
fixed_address=None)
@ -479,7 +492,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.associate_floating_ip")
def test__dissociate_floating_ip(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._dissociate_floating_ip(self.server, self.floating_ip)
self.server.remove_floating_ip.assert_called_once_with(
self.floating_ip)
@ -487,7 +500,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.dissociate_floating_ip")
def test__check_ip_address(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
fake_server = fakes.FakeServerManager().create("test_server",
"image_id_01",
"flavor_id_01")
@ -519,41 +532,41 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
def test__list_networks(self):
network_list = []
self.clients("nova").networks.list.return_value = network_list
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
return_network_list = nova_scenario._list_networks()
self.assertEqual(network_list, return_network_list)
self._test_atomic_action_timer(nova_scenario.atomic_actions(),
"nova.list_networks")
def test__resize(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
to_flavor = mock.Mock()
nova_scenario._resize(self.server, to_flavor)
self._test_atomic_action_timer(nova_scenario.atomic_actions(),
"nova.resize")
def test__resize_confirm(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._resize_confirm(self.server)
self._test_atomic_action_timer(nova_scenario.atomic_actions(),
"nova.resize_confirm")
def test__resize_revert(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._resize_revert(self.server)
self._test_atomic_action_timer(nova_scenario.atomic_actions(),
"nova.resize_revert")
def test__attach_volume(self):
self.clients("nova").volumes.create_server_volume.return_value = None
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._attach_volume(self.server, self.volume)
self._test_atomic_action_timer(nova_scenario.atomic_actions(),
"nova.attach_volume")
def test__detach_volume(self):
self.clients("nova").volumes.delete_server_volume.return_value = None
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._detach_volume(self.server, self.volume)
self._test_atomic_action_timer(nova_scenario.atomic_actions(),
"nova.detach_volume")
@ -561,7 +574,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
def test__live_migrate_server(self):
fake_host = mock.MagicMock()
self.admin_clients("nova").servers.get(return_value=self.server)
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._live_migrate(self.server,
fake_host,
block_migration=False,
@ -597,7 +610,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
]
setattr(fake_server, "OS-EXT-SRV-ATTR:host", "b2")
setattr(fake_server, "OS-EXT-AZ:availability_zone", "b")
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
self.assertIn(
nova_scenario._find_host_to_migrate(fake_server), ["b1", "b3"])
@ -606,7 +619,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
fake_server = self.server
setattr(fake_server, "OS-EXT-SRV-ATTR:host", "a1")
self.clients("nova").servers.get(return_value=fake_server)
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._migrate(fake_server, skip_host_check=True)
self.mock_wait_for.mock.assert_called_once_with(
@ -625,7 +638,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
fake_server, skip_host_check=False)
def test__create_security_groups(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._generate_random_name = mock.MagicMock()
security_group_count = 5
@ -644,7 +657,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.create_%s_security_groups" % security_group_count)
def test__create_rules_for_security_group(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
fake_secgroups = [fakes.FakeSecurityGroup(None, None, 1, "uuid1"),
fakes.FakeSecurityGroup(None, None, 2, "uuid2")]
@ -674,7 +687,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.update_%s_security_groups" % len(fake_secgroups))
def test__delete_security_groups(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
fake_secgroups = [fakes.FakeSecurityGroup(None, None, 1, "uuid1"),
fakes.FakeSecurityGroup(None, None, 2, "uuid2")]
@ -689,7 +702,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.delete_%s_security_groups" % len(fake_secgroups))
def test__list_security_groups(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._list_security_groups()
self.clients("nova").security_groups.list.assert_called_once_with()
@ -700,7 +713,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
def test__list_keypairs(self):
keypairs_list = ["foo_keypair"]
self.clients("nova").keypairs.list.return_value = keypairs_list
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
return_keypairs_list = nova_scenario._list_keypairs()
self.assertEqual(keypairs_list, return_keypairs_list)
self._test_atomic_action_timer(nova_scenario.atomic_actions(),
@ -708,14 +721,14 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
def test__create_keypair(self):
self.clients("nova").keypairs.create.return_value.name = self.keypair
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
return_keypair = nova_scenario._create_keypair()
self.assertEqual(self.keypair, return_keypair)
self._test_atomic_action_timer(nova_scenario.atomic_actions(),
"nova.create_keypair")
def test__delete_keypair(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._delete_keypair(self.keypair)
self.clients("nova").keypairs.delete.assert_called_once_with(
self.keypair)
@ -726,7 +739,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
floating_ips_bulk_list = ["foo_floating_ips_bulk"]
self.admin_clients("nova").floating_ips_bulk.list.return_value = (
floating_ips_bulk_list)
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
return_floating_ips_bulk_list = nova_scenario._list_floating_ips_bulk()
self.assertEqual(floating_ips_bulk_list, return_floating_ips_bulk_list)
self._test_atomic_action_timer(nova_scenario.atomic_actions(),
@ -741,7 +754,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
fake_floating_ips_bulk.pool = fake_pool
self.admin_clients("nova").floating_ips_bulk.create.return_value = (
fake_floating_ips_bulk)
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
return_iprange = nova_scenario._create_floating_ips_bulk(fake_cidr)
mock_generate_cidr.assert_called_once_with(start_cidr=fake_cidr)
self.assertEqual(return_iprange, fake_floating_ips_bulk)
@ -750,7 +763,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
def test__delete_floating_ips_bulk(self):
fake_cidr = "10.2.0.0/24"
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._delete_floating_ips_bulk(fake_cidr)
self.admin_clients(
"nova").floating_ips_bulk.delete.assert_called_once_with(fake_cidr)
@ -758,7 +771,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
"nova.delete_floating_ips_bulk")
def test__list_hypervisors(self):
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._list_hypervisors(detailed=False)
self.admin_clients("nova").hypervisors.list.assert_called_once_with(
False)
@ -767,7 +780,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
def test__lock_server(self):
server = mock.Mock()
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._lock_server(server)
server.lock.assert_called_once_with()
self._test_atomic_action_timer(nova_scenario.atomic_actions(),
@ -775,7 +788,7 @@ class NovaScenarioTestCase(test.ScenarioTestCase):
def test__unlock_server(self):
server = mock.Mock()
nova_scenario = utils.NovaScenario()
nova_scenario = utils.NovaScenario(context=self.context)
nova_scenario._unlock_server(server)
server.unlock.assert_called_once_with()
self._test_atomic_action_timer(nova_scenario.atomic_actions(),

View File

@ -23,13 +23,13 @@ class QuotasTestCase(test.ScenarioTestCase):
def setUp(self):
super(QuotasTestCase, self).setUp()
self.context = {
self.context.update({
"user": {
"tenant_id": "fake",
"endpoint": mock.MagicMock()
},
"tenant": {"id": "fake"}
}
})
def test_nova_update(self):
scenario = quotas.Quotas(self.context)

View File

@ -35,7 +35,7 @@ class QuotasScenarioTestCase(test.ScenarioTestCase):
"cores": 10,
}
self.admin_clients("nova").quotas.update.return_value = quotas
scenario = utils.QuotasScenario()
scenario = utils.QuotasScenario(self.context)
scenario._generate_quota_values = mock.MagicMock(return_value=quotas)
result = scenario._update_quotas("nova", tenant_id)
@ -59,7 +59,7 @@ class QuotasScenarioTestCase(test.ScenarioTestCase):
"cores": 10,
}
self.admin_clients("nova").quotas.update.return_value = quotas
scenario = utils.QuotasScenario()
scenario = utils.QuotasScenario(self.context)
scenario._generate_quota_values = mock.MagicMock(return_value=quotas)
mock_quota = mock.Mock(return_value=quotas)
@ -73,21 +73,21 @@ class QuotasScenarioTestCase(test.ScenarioTestCase):
def test__generate_quota_values_nova(self):
max_quota = 1024
scenario = utils.QuotasScenario()
scenario = utils.QuotasScenario(self.context)
quotas = scenario._generate_quota_values(max_quota, "nova")
for k, v in six.iteritems(quotas):
self.assertTrue(-1 <= v <= max_quota)
def test__generate_quota_values_cinder(self):
max_quota = 1024
scenario = utils.QuotasScenario()
scenario = utils.QuotasScenario(self.context)
quotas = scenario._generate_quota_values(max_quota, "cinder")
for k, v in six.iteritems(quotas):
self.assertTrue(-1 <= v <= max_quota)
def test__generate_quota_values_neutron(self):
max_quota = 1024
scenario = utils.QuotasScenario()
scenario = utils.QuotasScenario(self.context)
quotas = scenario._generate_quota_values(max_quota, "neutron")
for v in six.itervalues(quotas):
for v1 in six.itervalues(v):
@ -96,7 +96,7 @@ class QuotasScenarioTestCase(test.ScenarioTestCase):
def test__delete_quotas(self):
tenant_id = "fake_tenant"
scenario = utils.QuotasScenario()
scenario = utils.QuotasScenario(self.context)
scenario._delete_quotas("nova", tenant_id)
self.admin_clients("nova").quotas.delete.assert_called_once_with(

View File

@ -30,7 +30,7 @@ class SaharaClustersTestCase(test.ScenarioTestCase):
return_value=mock.MagicMock(id=42))
def test_create_and_delete_cluster(
self, mock__launch_cluster, mock__delete_cluster):
clusters_scenario = clusters.SaharaClusters()
clusters_scenario = clusters.SaharaClusters(self.context)
clusters_scenario.context = {
"tenant": {
@ -71,7 +71,7 @@ class SaharaClustersTestCase(test.ScenarioTestCase):
self.clients("sahara").clusters.get.return_value = mock.MagicMock(
id=42, status="active"
)
clusters_scenario = clusters.SaharaClusters()
clusters_scenario = clusters.SaharaClusters(self.context)
clusters_scenario.context = {
"tenant": {

View File

@ -30,6 +30,7 @@ class SaharaJobTestCase(test.ScenarioTestCase):
def setUp(self):
super(SaharaJobTestCase, self).setUp()
self.context = test.get_test_context()
CONF.set_override("cluster_check_interval", 0, "benchmark")
CONF.set_override("job_check_interval", 0, "benchmark")
@ -42,9 +43,7 @@ class SaharaJobTestCase(test.ScenarioTestCase):
self.clients("sahara").jobs.create.return_value = mock.MagicMock(
id="42")
jobs_scenario = jobs.SaharaJob()
jobs_scenario.context = {
self.context.update({
"tenant": {
"sahara_image": "test_image",
"sahara_mains": ["main_42"],
@ -52,7 +51,9 @@ class SaharaJobTestCase(test.ScenarioTestCase):
"sahara_cluster": "cl_42",
"sahara_input": "in_42"
}
}
})
jobs_scenario = jobs.SaharaJob(self.context)
jobs_scenario.create_launch_job(
job_type="java",
configs={"conf_key": "conf_val"},
@ -87,9 +88,7 @@ class SaharaJobTestCase(test.ScenarioTestCase):
self.clients("sahara").jobs.create.return_value = mock.MagicMock(
id="42")
jobs_scenario = jobs.SaharaJob()
jobs_scenario.context = {
self.context.update({
"tenant": {
"sahara_image": "test_image",
"sahara_mains": ["main_42"],
@ -97,7 +96,8 @@ class SaharaJobTestCase(test.ScenarioTestCase):
"sahara_cluster": "cl_42",
"sahara_input": "in_42"
}
}
})
jobs_scenario = jobs.SaharaJob(self.context)
jobs_scenario.create_launch_job(
job_type="pig",
configs={"conf_key": "conf_val"},
@ -129,9 +129,7 @@ class SaharaJobTestCase(test.ScenarioTestCase):
self.clients("sahara").jobs.create.return_value = mock.MagicMock(
id="42")
jobs_scenario = jobs.SaharaJob()
jobs_scenario.context = {
self.context.update({
"tenant": {
"sahara_image": "test_image",
"sahara_mains": ["main_42"],
@ -139,7 +137,8 @@ class SaharaJobTestCase(test.ScenarioTestCase):
"sahara_cluster": "cl_42",
"sahara_input": "in_42"
}
}
})
jobs_scenario = jobs.SaharaJob(self.context)
jobs_scenario.create_launch_job_sequence(
jobs=[
{
@ -190,9 +189,7 @@ class SaharaJobTestCase(test.ScenarioTestCase):
self.clients("sahara").clusters.get.return_value = mock.MagicMock(
id="cl_42", status="active")
jobs_scenario = jobs.SaharaJob()
jobs_scenario.context = {
self.context.update({
"tenant": {
"sahara_image": "test_image",
"sahara_mains": ["main_42"],
@ -200,7 +197,8 @@ class SaharaJobTestCase(test.ScenarioTestCase):
"sahara_cluster": "cl_42",
"sahara_input": "in_42"
}
}
})
jobs_scenario = jobs.SaharaJob(self.context)
jobs_scenario.create_launch_job_sequence_with_scaling(
jobs=[
{

View File

@ -25,6 +25,10 @@ SAHARA_NGTS = ("rally.plugins.openstack.scenarios.sahara.node_group_templates"
class SaharaNodeGroupTemplatesTestCase(test.TestCase):
def setUp(self):
super(SaharaNodeGroupTemplatesTestCase, self).setUp()
self.context = test.get_test_context()
@mock.patch(SAHARA_NGTS + "._list_node_group_templates")
@mock.patch(SAHARA_NGTS + "._create_master_node_group_template",
return_value=object())
@ -36,7 +40,7 @@ class SaharaNodeGroupTemplatesTestCase(test.TestCase):
mock__create_master_node_group_template,
mock__list_node_group_templates):
ngts_scenario = ngts.SaharaNodeGroupTemplates()
ngts_scenario = ngts.SaharaNodeGroupTemplates(self.context)
ngts_scenario.create_and_list_node_group_templates("test_flavor",
"test_plugin",
"test_version")
@ -62,7 +66,7 @@ class SaharaNodeGroupTemplatesTestCase(test.TestCase):
mock__create_master_node_group_template,
mock__delete_node_group_template):
ngts_scenario = ngts.SaharaNodeGroupTemplates()
ngts_scenario = ngts.SaharaNodeGroupTemplates(self.context)
ngts_scenario.create_delete_node_group_templates(
"test_flavor",
"test_plugin",

View File

@ -48,7 +48,7 @@ class SaharaScenarioTestCase(test.ScenarioTestCase):
ngts = []
self.clients("sahara").node_group_templates.list.return_value = ngts
scenario = utils.SaharaScenario()
scenario = utils.SaharaScenario(self.context)
return_ngts_list = scenario._list_node_group_templates()
self.assertEqual(ngts, return_ngts_list)
@ -62,7 +62,7 @@ class SaharaScenarioTestCase(test.ScenarioTestCase):
self, mock_sahara_consts,
mock__generate_random_name):
scenario = utils.SaharaScenario()
scenario = utils.SaharaScenario(self.context)
mock_processes = {
"test_plugin": {
"test_version": {
@ -110,7 +110,7 @@ class SaharaScenarioTestCase(test.ScenarioTestCase):
"sahara.create_worker_node_group_template")
def test_delete_node_group_templates(self):
scenario = utils.SaharaScenario()
scenario = utils.SaharaScenario(self.context)
ng = mock.MagicMock(id=42)
scenario._delete_node_group_template(ng)
@ -127,7 +127,7 @@ class SaharaScenarioTestCase(test.ScenarioTestCase):
def test_launch_cluster(self, mock_sahara_consts,
mock__generate_random_name):
context = {
self.context.update({
"tenant": {
"networks": [
{
@ -136,13 +136,13 @@ class SaharaScenarioTestCase(test.ScenarioTestCase):
}
]
}
}
})
self.clients("services").values.return_value = [
consts.Service.NEUTRON
]
scenario = utils.SaharaScenario(context=context)
scenario = utils.SaharaScenario(context=self.context)
mock_processes = {
"test_plugin": {
@ -232,7 +232,7 @@ class SaharaScenarioTestCase(test.ScenarioTestCase):
def test_launch_cluster_error(self, mock_sahara_consts,
mock__generate_random_name):
scenario = utils.SaharaScenario()
scenario = utils.SaharaScenario(self.context)
mock_processes = {
"test_plugin": {
"test_version": {
@ -274,7 +274,7 @@ class SaharaScenarioTestCase(test.ScenarioTestCase):
"local_value"}})
def test_scale_cluster(self):
scenario = utils.SaharaScenario()
scenario = utils.SaharaScenario(self.context)
cluster = mock.MagicMock(id=42, node_groups=[{
"name": "random_master",
"count": 1
@ -298,7 +298,7 @@ class SaharaScenarioTestCase(test.ScenarioTestCase):
42, expected_scale_object)
def test_delete_cluster(self):
scenario = utils.SaharaScenario()
scenario = utils.SaharaScenario(self.context)
cluster = mock.MagicMock(id=42)
self.clients("sahara").clusters.get.side_effect = [
cluster, sahara_base.APIException()
@ -318,14 +318,14 @@ class SaharaScenarioTestCase(test.ScenarioTestCase):
@mock.patch(SAHARA_UTILS + ".SaharaScenario._generate_random_name",
return_value="42")
def test_create_output_ds(self, mock__generate_random_name):
ctxt = {
self.context.update({
"sahara_output_conf": {
"output_type": "hdfs",
"output_url_prefix": "hdfs://test_out/"
}
}
})
scenario = utils.SaharaScenario(ctxt)
scenario = utils.SaharaScenario(self.context)
scenario._create_output_ds()
self.clients("sahara").data_sources.create.assert_called_once_with(
@ -338,14 +338,14 @@ class SaharaScenarioTestCase(test.ScenarioTestCase):
@mock.patch(SAHARA_UTILS + ".SaharaScenario._generate_random_name",
return_value="42")
def test_create_output_ds_swift(self, mock__generate_random_name):
ctxt = {
self.context.update({
"sahara_output_conf": {
"output_type": "swift",
"output_url_prefix": "swift://test_out/"
}
}
})
scenario = utils.SaharaScenario(ctxt)
scenario = utils.SaharaScenario(self.context)
self.assertRaises(exceptions.RallyException,
scenario._create_output_ds)
@ -357,7 +357,7 @@ class SaharaScenarioTestCase(test.ScenarioTestCase):
self.clients("sahara").job_executions.create.return_value = (
mock.MagicMock(id="42"))
scenario = utils.SaharaScenario()
scenario = utils.SaharaScenario(self.context)
scenario._run_job_execution(job_id="test_job_id",
cluster_id="test_cluster_id",
input_id="test_input_id",
@ -386,7 +386,7 @@ class SaharaScenarioTestCase(test.ScenarioTestCase):
self.clients("sahara").job_executions.create.return_value = (
mock.MagicMock(id="42"))
scenario = utils.SaharaScenario()
scenario = utils.SaharaScenario(self.context)
self.assertRaises(exceptions.RallyException,
scenario._run_job_execution,
job_id="test_job_id",

View File

@ -22,7 +22,7 @@ from tests.unit import test
class SwiftObjectsTestCase(test.ScenarioTestCase):
def test_create_container_and_object_then_list_objects(self):
scenario = objects.SwiftObjects()
scenario = objects.SwiftObjects(self.context)
scenario._create_container = mock.MagicMock(return_value="AA")
scenario._upload_object = mock.MagicMock()
scenario._list_objects = mock.MagicMock()
@ -39,7 +39,7 @@ class SwiftObjectsTestCase(test.ScenarioTestCase):
"swift.create_5_objects")
def test_create_container_and_object_then_delete_all(self):
scenario = objects.SwiftObjects()
scenario = objects.SwiftObjects(self.context)
scenario._create_container = mock.MagicMock(return_value="BB")
scenario._upload_object = mock.MagicMock(
side_effect=[("etaaag", "ooobj_%i" % i) for i in range(3)])
@ -63,7 +63,7 @@ class SwiftObjectsTestCase(test.ScenarioTestCase):
"swift.delete_3_objects")
def test_create_container_and_object_then_download_object(self):
scenario = objects.SwiftObjects()
scenario = objects.SwiftObjects(self.context)
scenario._create_container = mock.MagicMock(return_value="CC")
scenario._upload_object = mock.MagicMock(
side_effect=[("etaaaag", "obbbj_%i" % i) for i in range(2)])
@ -87,7 +87,7 @@ class SwiftObjectsTestCase(test.ScenarioTestCase):
def test_functional_create_container_and_object_then_list_objects(self):
names_list = ["AA", "BB", "CC", "DD"]
scenario = objects.SwiftObjects()
scenario = objects.SwiftObjects(self.context)
scenario._generate_random_name = mock.MagicMock(side_effect=names_list)
scenario._list_objects = mock.MagicMock()
@ -103,7 +103,7 @@ class SwiftObjectsTestCase(test.ScenarioTestCase):
def test_functional_create_container_and_object_then_delete_all(self):
names_list = ["111", "222", "333", "444", "555"]
scenario = objects.SwiftObjects()
scenario = objects.SwiftObjects(self.context)
scenario._generate_random_name = mock.MagicMock(side_effect=names_list)
scenario._delete_object = mock.MagicMock()
scenario._delete_container = mock.MagicMock()
@ -125,7 +125,7 @@ class SwiftObjectsTestCase(test.ScenarioTestCase):
def test_functional_create_container_and_object_then_download_object(self):
names_list = ["aaa", "bbb", "ccc", "ddd", "eee", "fff"]
scenario = objects.SwiftObjects()
scenario = objects.SwiftObjects(self.context)
scenario._generate_random_name = mock.MagicMock(side_effect=names_list)
scenario._download_object = mock.MagicMock()

View File

@ -28,7 +28,7 @@ class SwiftScenarioTestCase(test.ScenarioTestCase):
containers_list = mock.MagicMock()
self.clients("swift").get_account.return_value = (headers_dict,
containers_list)
scenario = utils.SwiftScenario()
scenario = utils.SwiftScenario(context=self.context)
self.assertEqual((headers_dict, containers_list),
scenario._list_containers(fargs="f"))
@ -100,7 +100,7 @@ class SwiftScenarioTestCase(test.ScenarioTestCase):
def test__delete_container(self):
container_name = mock.MagicMock()
scenario = utils.SwiftScenario()
scenario = utils.SwiftScenario(context=self.context)
scenario._delete_container(container_name, fargs="f")
kw = {"fargs": "f"}
@ -117,7 +117,7 @@ class SwiftScenarioTestCase(test.ScenarioTestCase):
objects_list = mock.MagicMock()
self.clients("swift").get_container.return_value = (headers_dict,
objects_list)
scenario = utils.SwiftScenario()
scenario = utils.SwiftScenario(context=self.context)
self.assertEqual((headers_dict, objects_list),
scenario._list_objects(container_name, fargs="f"))
@ -135,7 +135,7 @@ class SwiftScenarioTestCase(test.ScenarioTestCase):
content = mock.MagicMock()
etag = mock.MagicMock()
self.clients("swift").put_object.return_value = etag
scenario = utils.SwiftScenario()
scenario = utils.SwiftScenario(self.context)
# container + content + name + kw
self.assertEqual((etag, object_name),
@ -168,7 +168,7 @@ class SwiftScenarioTestCase(test.ScenarioTestCase):
headers_dict = mock.MagicMock()
content = mock.MagicMock()
self.clients("swift").get_object.return_value = (headers_dict, content)
scenario = utils.SwiftScenario()
scenario = utils.SwiftScenario(context=self.context)
self.assertEqual((headers_dict, content),
scenario._download_object(container_name, object_name,
@ -184,7 +184,7 @@ class SwiftScenarioTestCase(test.ScenarioTestCase):
def test__delete_object(self):
container_name = mock.MagicMock()
object_name = mock.MagicMock()
scenario = utils.SwiftScenario()
scenario = utils.SwiftScenario(context=self.context)
scenario._delete_object(container_name, object_name, fargs="f")
kw = {"fargs": "f"}

View File

@ -33,7 +33,7 @@ class VMScenarioTestCase(test.ScenarioTestCase):
side_effect=mock.mock_open(), create=True)
def test__run_command_over_ssh_script_file(self, mock_open):
mock_ssh = mock.MagicMock()
vm_scenario = utils.VMScenario()
vm_scenario = utils.VMScenario(self.context)
vm_scenario._run_command_over_ssh(
mock_ssh,
{
@ -50,7 +50,7 @@ class VMScenarioTestCase(test.ScenarioTestCase):
@mock.patch("%s.six.moves.StringIO" % VMTASKS_UTILS)
def test__run_command_over_ssh_script_inline(self, mock_string_io):
mock_ssh = mock.MagicMock()
vm_scenario = utils.VMScenario()
vm_scenario = utils.VMScenario(self.context)
vm_scenario._run_command_over_ssh(
mock_ssh,
{
@ -66,7 +66,7 @@ class VMScenarioTestCase(test.ScenarioTestCase):
def test__run_command_over_ssh_remote_path(self):
mock_ssh = mock.MagicMock()
vm_scenario = utils.VMScenario()
vm_scenario = utils.VMScenario(self.context)
vm_scenario._run_command_over_ssh(
mock_ssh,
{
@ -80,7 +80,7 @@ class VMScenarioTestCase(test.ScenarioTestCase):
def test__run_command_over_ssh_remote_path_copy(self):
mock_ssh = mock.MagicMock()
vm_scenario = utils.VMScenario()
vm_scenario = utils.VMScenario(self.context)
vm_scenario._run_command_over_ssh(
mock_ssh,
{
@ -97,19 +97,19 @@ class VMScenarioTestCase(test.ScenarioTestCase):
stdin=None)
def test__run_command_over_ssh_fails(self):
vm_scenario = utils.VMScenario()
vm_scenario = utils.VMScenario(self.context)
self.assertRaises(ValueError,
vm_scenario._run_command_over_ssh,
None, command={})
def test__wait_for_ssh(self):
ssh = mock.MagicMock()
vm_scenario = utils.VMScenario()
vm_scenario = utils.VMScenario(self.context)
vm_scenario._wait_for_ssh(ssh)
ssh.wait.assert_called_once_with()
def test__wait_for_ping(self):
vm_scenario = utils.VMScenario()
vm_scenario = utils.VMScenario(self.context)
vm_scenario._ping_ip_address = mock.Mock(return_value=True)
vm_scenario._wait_for_ping(netaddr.IPAddress("1.2.3.4"))
self.mock_wait_for.mock.assert_called_once_with(
@ -124,7 +124,7 @@ class VMScenarioTestCase(test.ScenarioTestCase):
@mock.patch("rally.common.sshutils.SSH")
def test__run_command(self, mock_sshutils_ssh,
mock_vm_scenario__run_command_over_ssh):
vm_scenario = utils.VMScenario()
vm_scenario = utils.VMScenario(self.context)
vm_scenario.context = {"user": {"keypair": {"private": "ssh"}}}
vm_scenario._run_command("1.2.3.4", 22, "username", "password",
command={"script_file": "foo",
@ -143,7 +143,7 @@ class VMScenarioTestCase(test.ScenarioTestCase):
mock_popen.return_value.returncode = 0
mock_sys.platform = "linux2"
vm_scenario = utils.VMScenario()
vm_scenario = utils.VMScenario(self.context)
host_ip = netaddr.IPAddress("1.2.3.4")
self.assertTrue(vm_scenario._ping_ip_address(host_ip))
@ -158,7 +158,7 @@ class VMScenarioTestCase(test.ScenarioTestCase):
mock_popen.return_value.returncode = 0
mock_sys.platform = "linux2"
vm_scenario = utils.VMScenario()
vm_scenario = utils.VMScenario(self.context)
host_ip = netaddr.IPAddress("1ce:c01d:bee2:15:a5:900d:a5:11fe")
self.assertTrue(vm_scenario._ping_ip_address(host_ip))
@ -173,7 +173,7 @@ class VMScenarioTestCase(test.ScenarioTestCase):
mock_popen.return_value.returncode = 0
mock_sys.platform = "freebsd10"
vm_scenario = utils.VMScenario()
vm_scenario = utils.VMScenario(self.context)
host_ip = netaddr.IPAddress("1.2.3.4")
self.assertTrue(vm_scenario._ping_ip_address(host_ip))
@ -188,7 +188,7 @@ class VMScenarioTestCase(test.ScenarioTestCase):
mock_popen.return_value.returncode = 0
mock_sys.platform = "freebsd10"
vm_scenario = utils.VMScenario()
vm_scenario = utils.VMScenario(self.context)
host_ip = netaddr.IPAddress("1ce:c01d:bee2:15:a5:900d:a5:11fe")
self.assertTrue(vm_scenario._ping_ip_address(host_ip))
@ -203,7 +203,7 @@ class VMScenarioTestCase(test.ScenarioTestCase):
addresses={"foo_net": [{"addr": "foo_ip"}]},
tenant_id="foo_tenant"
)
scenario = utils.VMScenario(context={})
scenario = utils.VMScenario(self.context)
scenario._boot_server = mock.Mock(return_value=server)
scenario._delete_server = mock.Mock()

View File

@ -22,14 +22,13 @@ from rally.plugins.openstack.scenarios.vm import vmtasks
from tests.unit import test
class VMTasksTestCase(test.TestCase):
class VMTasksTestCase(test.ScenarioTestCase):
def setUp(self):
super(VMTasksTestCase, self).setUp()
self.scenario = vmtasks.VMTasks(
context={"user": {"keypair": {"name": "keypair_name"},
"endpoint": mock.MagicMock()}}
)
self.context.update({"user": {"keypair": {"name": "keypair_name"},
"endpoint": mock.MagicMock()}})
self.scenario = vmtasks.VMTasks(context=self.context)
self.ip = {"id": "foo_id", "ip": "foo_ip", "is_floating": True}
self.scenario._boot_server_with_fip = mock.Mock(
return_value=("foo_server", self.ip))

View File

@ -21,18 +21,18 @@ BASE = "rally.plugins.openstack.scenarios.zaqar."
BASIC = BASE + "basic.ZaqarBasic."
class ZaqarBasicTestCase(test.TestCase):
class ZaqarBasicTestCase(test.ScenarioTestCase):
@mock.patch(BASIC + "_generate_random_name", return_value="fizbit")
def test_create_queue(self, mock__generate_random_name):
scenario = basic.ZaqarBasic()
scenario = basic.ZaqarBasic(self.context)
scenario._queue_create = mock.MagicMock()
scenario.create_queue(name_length=10)
scenario._queue_create.assert_called_once_with(name_length=10)
@mock.patch(BASIC + "_generate_random_name", return_value="kitkat")
def test_producer_consumer(self, mock__generate_random_name):
scenario = basic.ZaqarBasic()
scenario = basic.ZaqarBasic(self.context)
messages = [{"body": {"id": idx}, "ttl": 360} for idx
in range(20)]
queue = mock.MagicMock()

View File

@ -26,7 +26,7 @@ class ZaqarScenarioTestCase(test.ScenarioTestCase):
@mock.patch(UTILS + "ZaqarScenario._generate_random_name",
return_value="kitkat")
def test_queue_create(self, mock__generate_random_name):
scenario = utils.ZaqarScenario()
scenario = utils.ZaqarScenario(self.context)
result = scenario._queue_create(name_length=10)
self.assertEqual(self.clients("zaqar").queue.return_value, result)
@ -38,7 +38,7 @@ class ZaqarScenarioTestCase(test.ScenarioTestCase):
queue = fakes.FakeQueue()
queue.delete = mock.MagicMock()
scenario = utils.ZaqarScenario()
scenario = utils.ZaqarScenario(context=self.context)
scenario._queue_delete(queue)
queue.delete.assert_called_once_with()
self._test_atomic_action_timer(scenario.atomic_actions(),
@ -53,7 +53,7 @@ class ZaqarScenarioTestCase(test.ScenarioTestCase):
{"body": {"id": "three"}, "ttl": 140}]
min_msg_count = max_msg_count = len(messages)
scenario = utils.ZaqarScenario()
scenario = utils.ZaqarScenario(context=self.context)
scenario._messages_post(queue, messages, min_msg_count, max_msg_count)
queue.post.assert_called_once_with(messages)
@ -61,7 +61,7 @@ class ZaqarScenarioTestCase(test.ScenarioTestCase):
queue = fakes.FakeQueue()
queue.messages = mock.MagicMock()
scenario = utils.ZaqarScenario()
scenario = utils.ZaqarScenario(context=self.context)
scenario._messages_list(queue)
queue.messages.assert_called_once_with()
self._test_atomic_action_timer(scenario.atomic_actions(),

View File

@ -25,52 +25,45 @@ class OpenStackScenarioTestCase(test.TestCase):
self.osclients = mockpatch.Patch(
"rally.osclients.Clients")
self.useFixture(self.osclients)
self.context = test.get_test_context()
self.context.update({"foo": "bar"})
def test_init(self):
context = {"foo": "bar"}
scenario = base_scenario.OpenStackScenario(context)
self.assertEqual(context, scenario.context)
scenario = base_scenario.OpenStackScenario(self.context)
self.assertEqual(self.context, scenario.context)
def test_init_admin_context(self):
context = {
"foo": "bar",
"admin": {"endpoint": mock.Mock()}
}
scenario = base_scenario.OpenStackScenario(context)
self.assertEqual(context, scenario.context)
self.context["admin"] = {"endpoint": mock.Mock()}
scenario = base_scenario.OpenStackScenario(self.context)
self.assertEqual(self.context, scenario.context)
self.osclients.mock.assert_called_once_with(
context["admin"]["endpoint"])
self.context["admin"]["endpoint"])
self.assertRaises(
ValueError, base_scenario.OpenStackScenario,
context, admin_clients="foobar")
self.context, admin_clients="foobar")
def test_init_admin_clients(self):
context = {"foo": "bar"}
scenario = base_scenario.OpenStackScenario(
context, admin_clients="foobar")
self.assertEqual(context, scenario.context)
self.context, admin_clients="foobar")
self.assertEqual(self.context, scenario.context)
self.assertEqual("foobar", scenario._admin_clients)
def test_init_user_context(self):
context = {
"foo": "bar",
"user": {"endpoint": mock.Mock()}
}
scenario = base_scenario.OpenStackScenario(context)
self.assertEqual(context, scenario.context)
self.context["user"] = {"endpoint": mock.Mock()}
scenario = base_scenario.OpenStackScenario(self.context)
self.assertEqual(self.context, scenario.context)
self.osclients.mock.assert_called_once_with(
context["user"]["endpoint"])
self.context["user"]["endpoint"])
self.assertRaises(
ValueError, base_scenario.OpenStackScenario,
context, clients="foobar")
self.context, clients="foobar")
def test_init_user_clients(self):
context = {"foo": "bar"}
scenario = base_scenario.OpenStackScenario(
context, clients="foobar")
self.assertEqual(context, scenario.context)
self.context, clients="foobar")
self.assertEqual(self.context, scenario.context)
self.assertEqual("foobar", scenario._clients)

View File

@ -14,6 +14,7 @@
# under the License.
import os
import uuid
import mock
from oslo_config import fixture
@ -130,6 +131,8 @@ class ScenarioTestCase(TestCase):
for patcher in self._client_mocks:
patcher.start()
self.context = get_test_context()
def tearDown(self):
for patcher in self._client_mocks:
patcher.stop()
@ -145,3 +148,11 @@ class FakeClientsScenarioTestCase(ScenarioTestCase):
def setUp(self):
super(FakeClientsScenarioTestCase, self).setUp()
self._fake_clients = fakes.FakeClients()
def get_test_context():
return {
"task": {
"uuid": str(uuid.uuid4())
}
}