Blob Blame History Raw
diff --git a/tests.py b/tests.py
index 253cd6f..add5c06 100644
--- a/tests.py
+++ b/tests.py
@@ -91,13 +91,13 @@ class BaseTest(TestCase):
         self.assertIsInstance(result, dict)
         self.assertTrue(bool(result))
         if result:
-            self.assertIn(pack, [k.lower() for k in result.keys()])
+            self.assertIn(pack, [k.split(' (')[0].lower() for k in result.keys()])
 
     def test_search_names(self):
         pack = packages_for_tests[0].lower()
         result = self.virtual_env_obj.search_names(pack)
         self.assertIsInstance(result, list)
-        self.assertIn(pack, [k.lower() for k in result])
+        self.assertIn(pack, [k.split(' (')[0].lower() for k in result])
 
     def tearDown(self):
         if os.path.exists(self.env_path) and self.__class__.env_path is None:
diff --git a/virtualenvapi/manage.py b/virtualenvapi/manage.py
index d834be7..53e00ac 100644
--- a/virtualenvapi/manage.py
+++ b/virtualenvapi/manage.py
@@ -44,6 +44,16 @@ class VirtualEnvironment(object):
         return os.path.join('bin', 'pip')
 
     @property
+    def pip_version(self):
+        """Version of installed pip."""
+        if not self._pip_exists:
+            return None
+        if not hasattr(self, '_pip_version'):
+            string_version = self._execute([self._pip_rpath, '-V']).split()[1]
+            self._pip_version = tuple([int(n) for n in string_version.split('.')])
+        return self._pip_version
+
+    @property
     def root(self):
         """The root directory that this virtual environment exists in."""
         return os.path.split(self.path)[0]
@@ -270,10 +280,12 @@ class VirtualEnvironment(object):
     def installed_packages(self):
         """
         List of all packages that are installed in this environment in
-        the format [(name, ver), ..].
+        the format [(name, ver), ..]. wheel is excluded from freeze output
+        in pip version >= 8.1.0 if --all option is not specified.
         """
+        freeze_options = ['-l', '--all'] if self.pip_version >= (8, 1, 0) else ['-l']
         return list(map(split_package_name, filter(None, self._execute(
-                [self._pip_rpath, 'freeze', '-l']).split(linesep))))
+                [self._pip_rpath, 'freeze'] + freeze_options).split(linesep))))
 
     @property
     def installed_package_names(self):