Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / test / dotnet / project-references / default.nix
blobf40b9196c2091210bc8b2dde71ce01c1d81cade8
1 # Tests the `projectReferences = [ ... ];` feature of buildDotnetModule.
2 # The `library` derivation exposes a .nupkg, which is then consumed by the `application` derivation.
3 # https://nixos.org/manual/nixpkgs/unstable/index.html#packaging-a-dotnet-application
5 { lib
6 , dotnet-sdk
7 , buildDotnetModule
8 , runCommand
9 }:
11 let
12   nugetDeps = ./nuget-deps.nix;
14   # Specify the TargetFramework via an environment variable so that we don't
15   # have to update the .csproj files when updating dotnet-sdk
16   TargetFramework = "net${lib.versions.majorMinor (lib.getVersion dotnet-sdk)}";
18   library = buildDotnetModule {
19     name = "project-references-test-library";
20     src = ./library;
21     inherit nugetDeps TargetFramework;
23     packNupkg = true;
24   };
26   application = buildDotnetModule {
27     name = "project-references-test-application";
28     src = ./application;
29     inherit nugetDeps TargetFramework;
31     projectReferences = [ library ];
32   };
35 runCommand "project-references-test" { } ''
36   ${application}/bin/Application
37   touch $out