Files
nixpkgs/pkgs/development/python-modules/cyclonedx-python-lib/default.nix
Noah Fontes 383f370416 pythonPackages.cyclonedx-python-lib: fix checkPhase
The unit tests for this package require the tests directory to be on the
PYTHONPATH. We also can switch to pytest to run most of the
TestOutputJson test cases, explicitly disabling the few that require
network access.
2022-09-16 09:54:56 -07:00

80 lines
1.4 KiB
Nix

{ lib
, buildPythonPackage
, fetchFromGitHub
, importlib-metadata
, jsonschema
, lxml
, packageurl-python
, poetry-core
, pytestCheckHook
, python
, pythonOlder
, requirements-parser
, sortedcontainers
, setuptools
, toml
, types-setuptools
, types-toml
, xmldiff
}:
buildPythonPackage rec {
pname = "cyclonedx-python-lib";
version = "2.7.1";
format = "pyproject";
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "CycloneDX";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-c/KhoJOa121/h0n0GUazjUFChnUo05ThD+fuZXc5/Pk=";
};
nativeBuildInputs = [
poetry-core
];
propagatedBuildInputs = [
importlib-metadata
packageurl-python
requirements-parser
setuptools
sortedcontainers
toml
types-setuptools
types-toml
];
checkInputs = [
pytestCheckHook
jsonschema
lxml
xmldiff
];
pythonImportsCheck = [
"cyclonedx"
];
preCheck = ''
export PYTHONPATH=tests''${PYTHONPATH+:$PYTHONPATH}
'';
pytestFlagsArray = [ "tests/" ];
disabledTests = [
# These tests require network access.
"test_bom_v1_3_with_metadata_component"
"test_bom_v1_4_with_metadata_component"
];
meta = with lib; {
description = "Python library for generating CycloneDX SBOMs";
homepage = "https://github.com/CycloneDX/cyclonedx-python-lib";
license = with licenses; [ asl20 ];
maintainers = with maintainers; [ fab ];
};
}