From be26d74840eb86f7e7dfb11dce0f5d329e775257 Mon Sep 17 00:00:00 2001 From: Silvan Mosberger Date: Wed, 10 Jan 2024 19:55:24 +0100 Subject: [PATCH] tests.nixpkgs-check-by-name: Add test for alternate callPackage's Tests that alternate callPackage's don't give an error, so pkgs/by-name is only required for pkgs.callPackage itself --- .../nixpkgs-check-by-name/tests/mock-nixpkgs.nix | 4 +++- .../all-packages.nix | 16 ++++++++++++++++ .../only-callPackage-derivations/default.nix | 1 + .../pkgs/by-name/README.md | 0 4 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/all-packages.nix create mode 100644 pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/default.nix create mode 100644 pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/pkgs/by-name/README.md diff --git a/pkgs/test/nixpkgs-check-by-name/tests/mock-nixpkgs.nix b/pkgs/test/nixpkgs-check-by-name/tests/mock-nixpkgs.nix index 2f4657bafe52..f35fe051562b 100644 --- a/pkgs/test/nixpkgs-check-by-name/tests/mock-nixpkgs.nix +++ b/pkgs/test/nixpkgs-check-by-name/tests/mock-nixpkgs.nix @@ -30,7 +30,9 @@ let # The base fixed-point function to populate the resulting attribute set pkgsFun = self: { inherit lib; - callPackage = lib.callPackageWith self; + newScope = extra: lib.callPackageWith (self // extra); + callPackage = self.newScope { }; + callPackages = lib.callPackagesWith self; someDrv = { type = "derivation"; }; }; diff --git a/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/all-packages.nix new file mode 100644 index 000000000000..5b1ed9d2ccda --- /dev/null +++ b/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/all-packages.nix @@ -0,0 +1,16 @@ +self: super: { + alternateCallPackage = self.myScope.callPackage ({ myScopeValue, someDrv }: + assert myScopeValue; + someDrv + ) { }; + + myScope = self.lib.makeScope self.newScope (self: { + myScopeValue = true; + }); + + myPackages = self.callPackages ({ someDrv }: { + a = someDrv; + b = someDrv; + }) { }; + inherit (self.myPackages) a b; +} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/default.nix new file mode 100644 index 000000000000..af25d1450122 --- /dev/null +++ b/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/default.nix @@ -0,0 +1 @@ +import ../mock-nixpkgs.nix { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/pkgs/by-name/README.md b/pkgs/test/nixpkgs-check-by-name/tests/only-callPackage-derivations/pkgs/by-name/README.md new file mode 100644 index 000000000000..e69de29bb2d1