Fix unit tests failing in some cases
TestZeroCopy used to fail when 'localhost' resolved to an ipv6 address. https://github.com/eventlet/eventlet/issues/8 Also, "test_container_sync_realms.py:TestUtils.test_os_error" used to fail when unit tests were run as root user. This is because despite os.chmod(), a root user still has permission to access the file and hence OSError is not raised. Change-Id: Ife80b203358557999734515261814ce76c0e00cd Signed-off-by: Prashanth Pai <ppai@redhat.com>
This commit is contained in:
		| @@ -13,10 +13,12 @@ | ||||
| # See the License for the specific language governing permissions and | ||||
| # limitations under the License. | ||||
|  | ||||
| import errno | ||||
| import os | ||||
| import unittest | ||||
| import uuid | ||||
|  | ||||
| from mock import patch | ||||
| from swift.common.container_sync_realms import ContainerSyncRealms | ||||
| from test.unit import FakeLogger, temptree | ||||
|  | ||||
| @@ -41,9 +43,14 @@ class TestUtils(unittest.TestCase): | ||||
|         with temptree([fname], [fcontents]) as tempdir: | ||||
|             logger = FakeLogger() | ||||
|             fpath = os.path.join(tempdir, fname) | ||||
|             os.chmod(tempdir, 0) | ||||
|  | ||||
|             def _mock_getmtime(path): | ||||
|                 raise OSError(errno.EACCES, | ||||
|                               os.strerror(errno.EACCES) + | ||||
|                               ": '%s'" % (fpath)) | ||||
|             with patch('os.path.getmtime', _mock_getmtime): | ||||
|                 csr = ContainerSyncRealms(fpath, logger) | ||||
|             try: | ||||
|  | ||||
|             self.assertEqual( | ||||
|                 logger.all_log_lines(), | ||||
|                 {'error': [ | ||||
| @@ -51,8 +58,6 @@ class TestUtils(unittest.TestCase): | ||||
|                     "'%s'" % (fpath, fpath)]}) | ||||
|             self.assertEqual(csr.mtime_check_interval, 300) | ||||
|             self.assertEqual(csr.realms(), []) | ||||
|             finally: | ||||
|                 os.chmod(tempdir, 0700) | ||||
|  | ||||
|     def test_empty(self): | ||||
|         fname = 'container-sync-realms.conf' | ||||
|   | ||||
| @@ -4414,7 +4414,7 @@ class TestZeroCopy(unittest.TestCase): | ||||
|         self.wsgi_greenlet = spawn( | ||||
|             wsgi.server, listener, self.object_controller, NullLogger()) | ||||
|  | ||||
|         self.http_conn = httplib.HTTPConnection('localhost', port) | ||||
|         self.http_conn = httplib.HTTPConnection('127.0.0.1', port) | ||||
|         self.http_conn.connect() | ||||
|  | ||||
|     def tearDown(self): | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Prashanth Pai
					Prashanth Pai