openapi-generator-cli: Add passthru.tests.example

This commit is contained in:
Robert Hensing 2021-04-14 11:45:56 +02:00
parent a4c8569ed5
commit 99d5c97a8c
3 changed files with 46 additions and 6 deletions

View file

@ -1,6 +1,6 @@
{ lib, stdenv, fetchurl, jre, makeWrapper }:
{ callPackage, lib, stdenv, fetchurl, jre, makeWrapper }:
stdenv.mkDerivation rec {
let this = stdenv.mkDerivation rec {
version = "5.1.0";
pname = "openapi-generator-cli";
@ -30,4 +30,9 @@ stdenv.mkDerivation rec {
license = licenses.asl20;
maintainers = [ maintainers.shou ];
};
}
passthru.tests.example = callPackage ./example.nix {
openapi-generator-cli = this;
};
};
in this

View file

@ -0,0 +1,31 @@
{ openapi-generator-cli, fetchurl, runCommand }:
runCommand "openapi-generator-cli-test" {
nativeBuildInputs = [ openapi-generator-cli ];
petstore = fetchurl {
url = "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/14c0908becbccd78252be49bd92be8c53cd2b9e3/examples/v3.0/petstore.yaml";
sha256 = "sha256:1mgdbzv42alv0b1a18dqbabqyvyhrg3brynr5hqsrm3qljfzaq5b";
};
config = builtins.toJSON {
elmVersion = "0.19";
elmPrefixCustomTypeVariants = false;
};
passAsFile = [ "config" ];
} ''
openapi-generator-cli generate \
--input-spec $petstore \
--enable-post-process-file \
--generator-name elm \
--config "$config" \
--additional-properties elmEnableCustomBasePaths=true \
--output "$out" \
;
find $out
echo >&2 'Looking for some keywords'
set -x
grep 'module Api.Request.Pets' $out/src/Api/Request/Pets.elm
grep 'createPets' $out/src/Api/Request/Pets.elm
grep '"limit"' $out/src/Api/Request/Pets.elm
set +x
echo "Looks OK!"
''

View file

@ -1,6 +1,6 @@
{ lib, stdenv, fetchurl, jre, makeWrapper }:
{ callPackage, lib, stdenv, fetchurl, jre, makeWrapper }:
stdenv.mkDerivation rec {
let this = stdenv.mkDerivation rec {
version = "6.0.0-2021-01-18"; # Also update the fetchurl link
pname = "openapi-generator-cli";
@ -30,5 +30,9 @@ stdenv.mkDerivation rec {
license = licenses.asl20;
maintainers = [ maintainers.shou ];
};
}
passthru.tests.example = callPackage ./example.nix {
openapi-generator-cli = this;
};
};
in this