1{ lib, buildPythonPackage, fetchFromGitHub, fetchpatch, pythonOlder, mock }:
2
3buildPythonPackage rec {
4 pname = "mock-open";
5 version = "1.4.0";
6
7 # no tests in PyPI tarball
8 src = fetchFromGitHub {
9 owner = "nivbend";
10 repo = pname;
11 rev = "v${version}";
12 sha256 = "0qlz4y8jqxsnmqg03yp9f87rmnjrvmxm5qvm6n1218gm9k5dixbm";
13 };
14
15 patches = lib.optional (pythonOlder "3.0")
16 (fetchpatch {
17 name = "ascii-only.patch";
18 url = "https://github.com/das-g/mock-open/commit/521ff260da127949fe4aceff1667cba223c5b07b.patch";
19 sha256 = "0ampbhk7kwkn0q5d2h9wrflkr8fji2bybmdck4qdzw1qkslfwwrn";
20 });
21
22 propagatedBuildInputs = lib.optional (pythonOlder "3.3") mock;
23
24 meta = with lib; {
25 homepage = "https://github.com/nivbend/mock-open";
26 description = "A better mock for file I/O";
27 license = licenses.mit;
28 };
29}