summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorYurii Rashkovskii <yrashk@gmail.com>2018-01-16 01:40:40 -0800
committerJörg Thalheim <Mic92@users.noreply.github.com>2018-01-16 09:40:40 +0000
commit91e99899117c8712f5523dbaed4c275900922b43 (patch)
tree32f60aca216972c0ab63ea4ad92530f7ce27d60c /pkgs
parentcf3cc25bb267be2cded1b24fb6a29a81135e7e26 (diff)
downloadnixlib-91e99899117c8712f5523dbaed4c275900922b43.tar
nixlib-91e99899117c8712f5523dbaed4c275900922b43.tar.gz
nixlib-91e99899117c8712f5523dbaed4c275900922b43.tar.bz2
nixlib-91e99899117c8712f5523dbaed4c275900922b43.tar.lz
nixlib-91e99899117c8712f5523dbaed4c275900922b43.tar.xz
nixlib-91e99899117c8712f5523dbaed4c275900922b43.tar.zst
nixlib-91e99899117c8712f5523dbaed4c275900922b43.zip
aenum: make tests pass (#33805)
For Python 2, tests were failing because they depended on a particular
way of executing the tests module as it defined a global variable
and created a temporary file. Running it through setup.py didn't work.
Invoking it directly solved the issue.

For Python 3, aenum tests were disabled, however, they did't have to
fail. Configuring UTF8 locale resolved the failure that was happening
after the above fix for Python 2 was applied.
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/python-modules/aenum/default.nix19
1 files changed, 12 insertions, 7 deletions
diff --git a/pkgs/development/python-modules/aenum/default.nix b/pkgs/development/python-modules/aenum/default.nix
index 45e7f8915acf..466c20e19ca5 100644
--- a/pkgs/development/python-modules/aenum/default.nix
+++ b/pkgs/development/python-modules/aenum/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchPypi, buildPythonPackage, isPy3k }:
+{ stdenv, fetchPypi, buildPythonPackage, python, isPy3k, glibcLocales }:
 
 buildPythonPackage rec {
   pname = "aenum";
@@ -10,12 +10,17 @@ buildPythonPackage rec {
     sha256 = "d98bc55136d696fcf323760c3db0de489da9e41fd51283fa6f90205deb85bf6a";
   };
 
-  doCheck = !isPy3k;
-  # The following tests fail (only in python3
-  # test_convert (aenum.test.TestIntEnumConvert)
-  # test_convert_value_lookup_priority (aenum.test.TestIntEnumConvert)
-  # test_convert (aenum.test.TestIntEnumConvert)
-  # test_convert_value_lookup_priority (aenum.test.TestIntEnumConvert)
+  # For Python 3, locale has to be set to en_US.UTF-8 for
+  # tests to pass
+  checkInputs = if isPy3k then [ glibcLocales ] else [];
+
+  checkPhase = ''
+  runHook preCheck
+  ${if isPy3k then "export LC_ALL=en_US.UTF-8" else ""}
+  PYTHONPATH=`pwd` ${python.interpreter} aenum/test.py
+  runHook postCheck
+  '';
+
 
   meta = {
     description = "Advanced Enumerations (compatible with Python's stdlib Enum), NamedTuples, and NamedConstants";