diff --git a/tests/base.py b/tests/base.py new file mode 100644 index 0000000..b349f13 --- /dev/null +++ b/tests/base.py @@ -0,0 +1,39 @@ +# -*- coding: utf-8 -*- +# Copyright (C) 2013 eNovance SAS +# +# Author: Chmouel Boudjnah +# +# 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. + +"""Test base classes imported from ceilometer. +""" + +import unittest2 + +import mox +import stubout + + +class TestCase(unittest2.TestCase): + + def setUp(self): + super(TestCase, self).setUp() + self.mox = mox.Mox() + self.stubs = stubout.StubOutForTesting() + + def tearDown(self): + self.mox.UnsetStubs() + self.stubs.UnsetAll() + self.stubs.SmartUnsetAll() + self.mox.VerifyAll() + super(TestCase, self).tearDown() diff --git a/tests/test_accounts.py b/tests/test_accounts.py index a75921f..75028eb 100644 --- a/tests/test_accounts.py +++ b/tests/test_accounts.py @@ -14,27 +14,29 @@ # 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 unittest2 import swiftclient import keystoneclient +import base as test_base import sync.accounts from fakes import FakeSWConnection, TENANTS_LIST, STORAGE_ORIG, \ STORAGE_DEST, FakeSWClient, FakeKS, CONFIGDICT, CONTAINERS_LIST, \ fake_get_config -class TestAccount(unittest2.TestCase): +class TestAccount(test_base.TestCase): def setUp(self): + super(TestAccount, self).setUp() self.accounts_cls = sync.accounts.Accounts() - self._monkey_patch() + self._stubs() - def _monkey_patch(self): - keystoneclient.v2_0.client = FakeKS - swiftclient.get_account = FakeSWClient.get_account - swiftclient.http_connection = FakeSWClient.http_connection - swiftclient.client.Connection = FakeSWConnection - sync.accounts.get_config = fake_get_config + def _stubs(self): + self.stubs.Set(keystoneclient.v2_0, 'client', FakeKS) + self.stubs.Set(swiftclient.client, 'Connection', FakeSWConnection) + self.stubs.Set(sync.accounts, 'get_config', fake_get_config) + self.stubs.Set(swiftclient, 'get_account', FakeSWClient.get_account) + self.stubs.Set(swiftclient, 'http_connection', + FakeSWClient.http_connection) def test_get_swift_auth(self): tenant_name = 'foo1'