Merge pull request #130204 from Luflosi/postcss-cli-add-tests
nodePackages.postcss-cli: add passthru.tests
This commit is contained in:
commit
03a17d756a
2 changed files with 50 additions and 0 deletions
|
@ -276,6 +276,11 @@ let
|
|||
--prefix NODE_PATH : ${self.postcss}/lib/node_modules \
|
||||
--prefix NODE_PATH : ${self.autoprefixer}/lib/node_modules
|
||||
'';
|
||||
passthru.tests = {
|
||||
simple-execution = pkgs.callPackage ./package-tests/postcss-cli.nix {
|
||||
inherit (self) postcss-cli;
|
||||
};
|
||||
};
|
||||
meta.mainProgram = "postcss";
|
||||
};
|
||||
|
||||
|
|
45
pkgs/development/node-packages/package-tests/postcss-cli.nix
Normal file
45
pkgs/development/node-packages/package-tests/postcss-cli.nix
Normal file
|
@ -0,0 +1,45 @@
|
|||
{ runCommand, postcss-cli }:
|
||||
|
||||
let
|
||||
inherit (postcss-cli) packageName version;
|
||||
in
|
||||
|
||||
runCommand "${packageName}-tests" { meta.timeout = 60; }
|
||||
''
|
||||
# get version of installed program and compare with package version
|
||||
claimed_version="$(${postcss-cli}/bin/postcss --version)"
|
||||
if [[ "$claimed_version" != "${version}" ]]; then
|
||||
echo "Error: program version does not match package version ($claimed_version != ${version})"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# run basic help command
|
||||
${postcss-cli}/bin/postcss --help > /dev/null
|
||||
|
||||
# basic autoprefixer test
|
||||
config_dir="$(mktemp -d)"
|
||||
clean_up() {
|
||||
rm -rf "$config_dir"
|
||||
}
|
||||
trap clean_up EXIT
|
||||
echo "
|
||||
module.exports = {
|
||||
plugins: {
|
||||
'autoprefixer': { overrideBrowserslist: 'chrome 40' },
|
||||
},
|
||||
}
|
||||
" > "$config_dir/postcss.config.js"
|
||||
input='a{ user-select: none; }'
|
||||
expected_output='a{ -webkit-user-select: none; user-select: none; }'
|
||||
actual_output="$(echo $input | ${postcss-cli}/bin/postcss --no-map --config $config_dir)"
|
||||
if [[ "$actual_output" != "$expected_output" ]]; then
|
||||
echo "Error: autoprefixer did not output the correct CSS:"
|
||||
echo "$actual_output"
|
||||
echo "!="
|
||||
echo "$expected_output"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# needed for Nix to register the command as successful
|
||||
touch $out
|
||||
''
|
Loading…
Reference in a new issue