about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/python-modules/approvaltests/default.nix
blob: de64f86d728241234db7249898d2a7247ded4f2b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
{ stdenv, buildPythonPackage, fetchFromGitHub, isPy37, pyperclip }:

buildPythonPackage rec {
  version = "0.2.4";
  pname = "approvaltests";

  # no tests included in PyPI tarball
  src = fetchFromGitHub {
    owner = "approvals";
    repo = "ApprovalTests.Python";
    rev = version;
    sha256 = "05lj5i13zpkgw1wdc1v81wj4zqj8bpzqiwycdnwlg08azcy7k7j1";
  };

  propagatedBuildInputs = [ pyperclip ];

  postPatch = ''
    substituteInPlace setup.py \
      --replace "pyperclip==1.5.27" "pyperclip>=1.5.27"
  '';

  # Tests fail on Python 3.7
  # https://github.com/approvals/ApprovalTests.Python/issues/36
  doCheck = !isPy37;

  # Disable Linux failing test, because tries to use darwin/windows specific reporters
  preCheck = stdenv.lib.optionalString stdenv.isLinux ''
    substituteInPlace tests/test_genericdiffreporter.py \
      --replace "test_find_working_reporter" "_find_working_reporter"
  '';

  meta = with stdenv.lib; {
    description = "Assertion/verification library to aid testing";
    homepage = https://github.com/approvals/ApprovalTests.Python;
    license = licenses.asl20;
    maintainers = [ maintainers.marsam ];
  };
}