summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/spack/spack/test/multimethod.py4
-rw-r--r--var/spack/repos/builtin.mock/packages/multimethod-inheritor/package.py13
-rw-r--r--var/spack/repos/builtin/packages/zlib/package.py4
3 files changed, 21 insertions, 0 deletions
diff --git a/lib/spack/spack/test/multimethod.py b/lib/spack/spack/test/multimethod.py
index de694c1498..2780c57fc5 100644
--- a/lib/spack/spack/test/multimethod.py
+++ b/lib/spack/spack/test/multimethod.py
@@ -107,3 +107,7 @@ def test_multimethod_with_base_class(mock_packages):
pkg = spack.repo.get('multimethod@1')
assert pkg.base_method() == "base_method"
+
+def test_multimethod_inheritance(mock_packages):
+ pkg = spack.repo.get('multimethod-inheritor@1.0')
+ assert pkg.no_version_2() == 1
diff --git a/var/spack/repos/builtin.mock/packages/multimethod-inheritor/package.py b/var/spack/repos/builtin.mock/packages/multimethod-inheritor/package.py
new file mode 100644
index 0000000000..066a23c6fd
--- /dev/null
+++ b/var/spack/repos/builtin.mock/packages/multimethod-inheritor/package.py
@@ -0,0 +1,13 @@
+# Copyright 2013-2018 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack.pkg.builtin.mock.multimethod import Multimethod
+
+
+class MultimethodInheritor(Multimethod):
+ """This package is designed for use with Spack's multimethod test.
+ It has a bunch of test cases for the @when decorator that the
+ test uses.
+ """
diff --git a/var/spack/repos/builtin/packages/zlib/package.py b/var/spack/repos/builtin/packages/zlib/package.py
index eb34730906..81bbe00ee0 100644
--- a/var/spack/repos/builtin/packages/zlib/package.py
+++ b/var/spack/repos/builtin/packages/zlib/package.py
@@ -31,6 +31,10 @@ class Zlib(Package):
patch('w_patch.patch', when="@1.2.11%cce")
+ @when('%pgi')
+ def patch(self):
+ print "patching"
+
@property
def libs(self):
shared = '+shared' in self.spec