From 1e47264608de0d8742a1c39feaa8e4f5637f9b18 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Sat, 13 Feb 2021 09:45:09 +0100 Subject: [PATCH] python.tests: test overriding functions --- .../development/interpreters/python/tests.nix | 22 +++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/python/tests.nix b/pkgs/development/interpreters/python/tests.nix index ff27ca8ec20..cfba04da938 100644 --- a/pkgs/development/interpreters/python/tests.nix +++ b/pkgs/development/interpreters/python/tests.nix @@ -101,6 +101,24 @@ let }; }; + # Tests to ensure overriding works as expected. + overrideTests = let + extension = self: super: { + foobar = super.numpy; + }; + in { + test-packageOverrides = let + myPython = let + self = python.override { + packageOverrides = extension; + inherit self; + }; + in self; + in assert myPython.pkgs.foobar == myPython.pkgs.numpy; myPython.withPackages(ps: with ps; [ foobar ]); + # overrideScope is broken currently + # test-overrideScope = let + # myPackages = python.pkgs.overrideScope extension; + # in assert myPackages.foobar == myPackages.numpy; myPackages.python.withPackages(ps: with ps; [ foobar ]); + }; - -in lib.optionalAttrs (stdenv.hostPlatform == stdenv.buildPlatform ) (environmentTests // integrationTests) +in lib.optionalAttrs (stdenv.hostPlatform == stdenv.buildPlatform ) (environmentTests // integrationTests // overrideTests)