Merge pull request #106 from salt-formulas/develop

changes for v1.7.1 
diff --git a/reclass/values/tests/test_item.py b/reclass/values/tests/test_item.py
index 4b91f6e..e2565ef 100644
--- a/reclass/values/tests/test_item.py
+++ b/reclass/values/tests/test_item.py
@@ -8,7 +8,10 @@
 from reclass.values.item import ContainerItem
 from reclass.values.item import ItemWithReferences
 import unittest
-from mock import MagicMock
+try:
+    import unittest.mock as mock
+except ImportError:
+    import mock
 
 SETTINGS = Settings()
 
@@ -16,7 +19,7 @@
 class TestItemWithReferences(unittest.TestCase):
 
     def test_assembleRef_allrefs(self):
-        phonyitem = MagicMock()
+        phonyitem = mock.MagicMock()
         phonyitem.has_references = True
         phonyitem.get_references = lambda *x: [1]
 
@@ -26,7 +29,7 @@
         self.assertTrue(iwr.allRefs)
 
     def test_assembleRef_partial(self):
-        phonyitem = MagicMock()
+        phonyitem = mock.MagicMock()
         phonyitem.has_references = True
         phonyitem.allRefs = False
         phonyitem.get_references = lambda *x: [1]
diff --git a/reclass/values/tests/test_refitem.py b/reclass/values/tests/test_refitem.py
index 6581478..09887ba 100644
--- a/reclass/values/tests/test_refitem.py
+++ b/reclass/values/tests/test_refitem.py
@@ -9,14 +9,17 @@
 from reclass.values.dictitem import DictItem
 from reclass.values.refitem import RefItem
 import unittest
-from mock import MagicMock
+try:
+    import unittest.mock as mock
+except ImportError:
+    import mock
 
 SETTINGS = Settings()
 
 class TestRefItem(unittest.TestCase):
 
     def test_assembleRefs_ok(self):
-        phonyitem = MagicMock()
+        phonyitem = mock.MagicMock()
         phonyitem.render = lambda x, k: 'bar'
         phonyitem.has_references = True
         phonyitem.get_references = lambda *x: ['foo']
@@ -27,7 +30,7 @@
         self.assertTrue(iwr.allRefs)
 
     def test_assembleRefs_failedrefs(self):
-        phonyitem = MagicMock()
+        phonyitem = mock.MagicMock()
         phonyitem.render.side_effect = errors.ResolveError('foo')
         phonyitem.has_references = True
         phonyitem.get_references = lambda *x: ['foo']
diff --git a/requirements.txt b/requirements.txt
index 5f6aed1..5a81c5e 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,5 +1,5 @@
 pyparsing
 pyyaml
 six
-enum34
+enum34 ; python_version<'3.4'
 ddt
diff --git a/setup.py b/setup.py
index ab23207..8705127 100644
--- a/setup.py
+++ b/setup.py
@@ -42,7 +42,10 @@
     url = URL,
     packages = find_packages(exclude=['*tests']), #FIXME validate this
     entry_points = { 'console_scripts': console_scripts },
-    install_requires = ['pyparsing', 'pyyaml', 'six', 'enum34', 'ddt'], #FIXME pygit2 (require libffi-dev, libgit2-dev 0.26.x )
+    install_requires = ['pyparsing', 'pyyaml', 'six', 'ddt'], #FIXME pygit2 (require libffi-dev, libgit2-dev 0.26.x )
+    extras_require = {
+        ":python_version<'3.4'": ['enum34'],
+    },
 
     classifiers=[
         'Development Status :: 4 - Beta',