depot/third_party/nixpkgs/pkgs/development/python-modules/django-otp/default.nix
Default email 159e378cbb Project import generated by Copybara.
GitOrigin-RevId: c04d5652cfa9742b1d519688f65d1bbccea9eb7e
2024-09-19 17:19:46 +03:00

60 lines
1.2 KiB
Nix

{
lib,
buildPythonPackage,
fetchFromGitHub,
hatchling,
django,
freezegun,
qrcode,
pytest,
python,
}:
buildPythonPackage rec {
pname = "django-otp";
version = "1.5.2";
pyproject = true;
src = fetchFromGitHub {
owner = "django-otp";
repo = "django-otp";
rev = "v${version}";
hash = "sha256-fn3MptdlnqY0rOLwcPhKiLfrhYvov4YVLZ58Jp/j6zc=";
};
build-system = [ hatchling ];
dependencies = [
django
qrcode
];
env.DJANGO_SETTINGS_MODUOLE = "test.test_project.settings";
nativeCheckInputs = [
freezegun
pytest
];
checkPhase = ''
runHook preCheck
export PYTHONPATH=$PYTHONPATH:test
export DJANGO_SETTINGS_MODULE=test_project.settings
${python.interpreter} -m django test django_otp
runHook postCheck
'';
pytestFlagsArray = [ "src/django_otp/test.py" ];
pythonImportsCheck = [ "django_otp" ];
meta = with lib; {
homepage = "https://github.com/django-otp/django-otp";
changelog = "https://github.com/django-otp/django-otp/blob/${src.rev}/CHANGES.rst";
description = "Pluggable framework for adding two-factor authentication to Django using one-time passwords";
license = licenses.bsd2;
maintainers = [ ];
};
}