Merge pull request #12228 from mgedmin/py3k

Simplify FactCache.copy()
This commit is contained in:
Toshio Kuratomi 2015-09-02 23:55:31 -07:00
commit 9e023fedf2
2 changed files with 17 additions and 2 deletions

View file

@ -60,7 +60,7 @@ class FactCache(MutableMapping):
def copy(self):
""" Return a primitive copy of the keys and values from the cache. """
return dict([(k, v) for (k, v) in iteritems(self)])
return dict(self)
def keys(self):
return self._plugin.keys()

View file

@ -19,7 +19,8 @@
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type
from ansible.compat.tests import unittest
from ansible.compat.tests import unittest, mock
from ansible.plugins.cache import FactCache
from ansible.plugins.cache.base import BaseCacheModule
from ansible.plugins.cache.memory import CacheModule as MemoryCache
@ -42,6 +43,20 @@ else:
from ansible.plugins.cache.redis import CacheModule as RedisCache
class TestFactCache(unittest.TestCase):
def setUp(self):
with mock.patch('ansible.constants.CACHE_PLUGIN', 'memory'):
self.cache = FactCache()
def test_copy(self):
self.cache['avocado'] = 'fruit'
self.cache['daisy'] = 'flower'
a_copy = self.cache.copy()
self.assertEqual(type(a_copy), dict)
self.assertEqual(a_copy, dict(avocado='fruit', daisy='flower'))
class TestAbstractClass(unittest.TestCase):
def setUp(self):