9076679fef
Fix mocks' argument/decorator naming. Partial-Bug: #1462956 Change-Id: I8366736f3bc7088f867eec1fc72630dbe1bcf19e
96 lines
4.2 KiB
Python
96 lines
4.2 KiB
Python
# Copyright 2014: Mirantis Inc.
|
|
# All Rights Reserved.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
import mock
|
|
|
|
from rally import objects
|
|
from tests.unit import test
|
|
from tests.unit.verification import fakes
|
|
|
|
|
|
class VerificationTestCase(test.TestCase):
|
|
def setUp(self):
|
|
super(VerificationTestCase, self).setUp()
|
|
self.db_obj = {
|
|
"id": 777,
|
|
"uuid": "test_uuid",
|
|
"failures": 0, "tests": 2, "errors": 0, "time": "0.54",
|
|
"details": {
|
|
"failures": 0, "tests": 2, "errors": 0, "time": "0.54",
|
|
"test_cases": [
|
|
{"classname": "foo.Test",
|
|
"name": "foo_test[gate,negative]",
|
|
"time": "0.25"},
|
|
{"classname": "bar.Test",
|
|
"name": "bar_test[gate,negative]",
|
|
"time": "0.29"}]}}
|
|
|
|
@mock.patch("rally.objects.verification.db.verification_create")
|
|
def test_init_with_create(self, mock_verification_create):
|
|
objects.Verification(deployment_uuid="some_deployment_uuid")
|
|
mock_verification_create.assert_called_once_with(
|
|
"some_deployment_uuid")
|
|
|
|
@mock.patch("rally.objects.verification.db.verification_create")
|
|
def test_init_without_create(self, mock_verification_create):
|
|
verification = objects.Verification(db_object=self.db_obj)
|
|
|
|
self.assertEqual(0, mock_verification_create.call_count)
|
|
self.assertEqual(self.db_obj["failures"], verification.failures)
|
|
self.assertEqual(self.db_obj["tests"], verification.tests)
|
|
self.assertEqual(self.db_obj["errors"], verification.errors)
|
|
self.assertEqual(self.db_obj["time"], verification.time)
|
|
|
|
@mock.patch("rally.objects.verification.db.verification_get")
|
|
def test_get(self, mock_verification_get):
|
|
objects.Verification.get(self.db_obj["id"])
|
|
mock_verification_get.assert_called_once_with(self.db_obj["id"])
|
|
|
|
@mock.patch("rally.objects.verification.db.verification_delete")
|
|
@mock.patch("rally.objects.verification.db.verification_create")
|
|
def test_create_and_delete(self, mock_verification_create,
|
|
mock_verification_delete):
|
|
verification = objects.Verification(db_object=self.db_obj)
|
|
verification.delete()
|
|
mock_verification_delete.assert_called_once_with(self.db_obj["uuid"])
|
|
|
|
@mock.patch("rally.objects.verification.db.verification_update")
|
|
def test_set_failed(self, mock_verification_update):
|
|
mock_verification_update.return_value = self.db_obj
|
|
verification = objects.Verification(db_object=self.db_obj)
|
|
verification.set_failed()
|
|
mock_verification_update.assert_called_once_with(
|
|
self.db_obj["uuid"], {"status": "failed"})
|
|
|
|
@mock.patch("rally.objects.verification.db.verification_result_create")
|
|
@mock.patch("rally.objects.verification.db.verification_update")
|
|
def test_finish_verification(self, mock_verification_update,
|
|
mock_verification_result_create):
|
|
verification = objects.Verification(db_object=self.db_obj)
|
|
fake_results = fakes.get_fake_test_case()
|
|
verification.finish_verification(
|
|
fake_results["total"],
|
|
fake_results["test_cases"])
|
|
|
|
expected_values = {"status": "finished"}
|
|
expected_values.update(fake_results["total"])
|
|
mock_verification_update.assert_called_with(
|
|
self.db_obj["uuid"], expected_values)
|
|
|
|
expected_data = fake_results["total"].copy()
|
|
expected_data["test_cases"] = fake_results["test_cases"]
|
|
mock_verification_result_create.assert_called_once_with(
|
|
verification.uuid, expected_data)
|