コード例 #1
0
    def test_init_admin_context(self):
        self.context["admin"] = {"credential": mock.Mock()}
        scenario = base_scenario.OpenStackScenario(self.context)
        self.assertEqual(self.context, scenario.context)
        self.osclients.mock.assert_called_once_with(
            self.context["admin"]["credential"], {})

        scenario = base_scenario.OpenStackScenario(self.context,
                                                   admin_clients="foobar")
コード例 #2
0
 def test_profiler_init(self, users_credentials, expected_call_count,
                        mock_profiler_get, mock_profiler_init):
     for user, credential in users_credentials:
         self.context.update({user: {"credential": credential}})
     base_scenario.OpenStackScenario(self.context)
     self.assertEqual(expected_call_count, mock_profiler_init.call_count)
     self.assertEqual([mock.call()] * expected_call_count,
                      mock_profiler_get.call_args_list)
コード例 #3
0
    def test_init_user_context(self):
        user = {"credential": mock.Mock(), "tenant_id": "foo"}
        self.context["users"] = [user]
        self.context["tenants"] = {"foo": {"name": "bar"}}
        self.context["user_choice_method"] = "random"

        scenario = base_scenario.OpenStackScenario(self.context)

        self.assertEqual(user, scenario.context["user"])
        self.assertEqual(self.context["tenants"]["foo"],
                         scenario.context["tenant"])

        self.osclients.mock.assert_called_once_with(user["credential"])
コード例 #4
0
    def test__choose_user_random(self):
        users = [{"credential": mock.Mock(), "tenant_id": "foo"}
                 for _ in range(5)]
        self.context["users"] = users
        self.context["tenants"] = {"foo": {"name": "bar"},
                                   "baz": {"name": "spam"}}
        self.context["user_choice_method"] = "random"

        scenario = base_scenario.OpenStackScenario()
        scenario._choose_user(self.context)
        self.assertIn("user", self.context)
        self.assertIn(self.context["user"], self.context["users"])
        self.assertIn("tenant", self.context)
        tenant_id = self.context["user"]["tenant_id"]
        self.assertEqual(self.context["tenants"][tenant_id],
                         self.context["tenant"])
コード例 #5
0
    def test_profiler_init(self, users_credentials, expected_call_count,
                           mock_profiler_get, mock_profiler_init):
        for user, credential in users_credentials:
            self.context.update({
                user: {
                    "credential": credential
                },
                "iteration": 0
            })
        base_scenario.OpenStackScenario(self.context)

        if expected_call_count:
            mock_profiler_init.assert_called_once_with(
                CREDENTIAL_WITH_HMAC["profiler_hmac_key"])
            mock_profiler_get.assert_called_once_with()
        else:
            self.assertFalse(mock_profiler_init.called)
            self.assertFalse(mock_profiler_get.called)
コード例 #6
0
    def test__choose_user_round_robin(self, iteration, expected_user_id,
                                      expected_tenant_id):
        self.context["iteration"] = iteration
        self.context["user_choice_method"] = "round_robin"
        self.context["users"] = []
        self.context["tenants"] = {}
        for tid in ("foo", "bar"):
            users = [{"id": str(i), "tenant_id": tid} for i in range(2)]
            self.context["users"] += users
            self.context["tenants"][tid] = {"name": tid, "users": users}

        scenario = base_scenario.OpenStackScenario()
        scenario._choose_user(self.context)
        self.assertIn("user", self.context)
        self.assertIn(self.context["user"], self.context["users"])
        self.assertEqual(expected_user_id, self.context["user"]["id"])
        self.assertIn("tenant", self.context)
        tenant_id = self.context["user"]["tenant_id"]
        self.assertEqual(self.context["tenants"][tenant_id],
                         self.context["tenant"])
        self.assertEqual(expected_tenant_id, tenant_id)
コード例 #7
0
    def test_init_user_clients(self):
        scenario = base_scenario.OpenStackScenario(self.context,
                                                   clients="foobar")
        self.assertEqual(self.context, scenario.context)

        self.assertEqual("foobar", scenario._clients)
コード例 #8
0
 def test_init_clients(self):
     scenario = base_scenario.OpenStackScenario(self.context,
                                                admin_clients="spam",
                                                clients="ham")
     self.assertEqual("spam", scenario._admin_clients)
     self.assertEqual("ham", scenario._clients)
コード例 #9
0
 def test_init(self):
     scenario = base_scenario.OpenStackScenario(self.context)
     self.assertEqual(self.context, scenario.context)