1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 # dependencies
7 eth-abi,
8 eth-account,
9 eth-keys,
10 eth-utils,
11 pydantic,
12 rlp,
13 semantic-version,
14 # nativeCheckInputs
15 py-evm,
16 pytestCheckHook,
17 pytest-xdist,
18}:
19
20buildPythonPackage rec {
21 pname = "eth-tester";
22 version = "0.13.0-beta.1";
23 pyproject = true;
24
25 src = fetchFromGitHub {
26 owner = "ethereum";
27 repo = "eth-tester";
28 tag = "v${version}";
29 hash = "sha256-ssPtsEQAyaJde/empEpGU1bf3s4yxwlEXqpacN5GWDw=";
30 };
31
32 build-system = [ setuptools ];
33
34 dependencies = [
35 eth-abi
36 eth-account
37 eth-keys
38 eth-utils
39 pydantic
40 rlp
41 semantic-version
42 ];
43
44 nativeCheckInputs = [
45 py-evm
46 pytestCheckHook
47 pytest-xdist
48 ];
49
50 pythonImportsCheck = [ "eth_tester" ];
51
52 disabledTests = [
53 "test_install_local_wheel"
54 ];
55
56 meta = {
57 description = "Tool suite for testing ethereum applications";
58 homepage = "https://github.com/ethereum/eth-tester";
59 changelog = "https://github.com/ethereum/eth-tester/blob/v${version}/CHANGELOG.rst";
60 license = lib.licenses.mit;
61 maintainers = with lib.maintainers; [ hellwolf ];
62 };
63}