1{ lib
2, stdenv
3, buildPythonPackage
4, fetchFromGitHub
5, pydicom
6, pyfakefs
7, pytestCheckHook
8, sqlalchemy
9}:
10
11buildPythonPackage rec {
12 pname = "pynetdicom";
13 version = "1.5.7";
14
15 src = fetchFromGitHub {
16 owner = "pydicom";
17 repo = pname;
18 rev = "v${version}";
19 sha256 = "0wr6nh0xrhzwf05gnf3dwg5r3lhn9nfwch3l16zkbj6fli871brc";
20 };
21
22 propagatedBuildInputs = [
23 pydicom
24 ];
25
26 checkInputs = [
27 pyfakefs
28 pytestCheckHook
29 sqlalchemy
30 ];
31
32 disabledTests = [
33 # Some tests needs network capabilities
34 "test_str_types_empty"
35 "test_associate_reject"
36 "TestEchoSCP"
37 "TestEchoSCPCLI"
38 "TestFindSCP"
39 "TestFindSCPCLI"
40 "TestGetSCP"
41 "TestGetSCPCLI"
42 "TestMoveSCP"
43 "TestMoveSCPCLI"
44 "TestQRGetServiceClass"
45 "TestQRMoveServiceClass"
46 "TestStoreSCP"
47 "TestStoreSCPCLI"
48 "TestStoreSCU"
49 "TestStoreSCUCLI"
50 "TestState"
51 ];
52
53 pythonImportsCheck = [ "pynetdicom" ];
54
55 meta = with lib; {
56 description = "Python implementation of the DICOM networking protocol";
57 homepage = "https://github.com/pydicom/pynetdicom";
58 license = with licenses; [ mit ];
59 maintainers = with maintainers; [ fab ];
60 # Tests are not passing on Darwin/Aarch64, thus it's assumed that it doesn't work
61 broken = stdenv.isDarwin || stdenv.isAarch64;
62 };
63}