py-geth 5.0.0b3__tar.gz → 5.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. {py_geth-5.0.0b3/py_geth.egg-info → py_geth-5.1.0}/PKG-INFO +9 -8
  2. {py_geth-5.0.0b3 → py_geth-5.1.0}/README.md +4 -4
  3. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/__init__.py +11 -0
  4. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/install.py +39 -15
  5. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/process.py +6 -10
  6. {py_geth-5.0.0b3 → py_geth-5.1.0/py_geth.egg-info}/PKG-INFO +9 -8
  7. {py_geth-5.0.0b3 → py_geth-5.1.0}/py_geth.egg-info/SOURCES.txt +6 -0
  8. {py_geth-5.0.0b3 → py_geth-5.1.0}/py_geth.egg-info/requires.txt +3 -2
  9. {py_geth-5.0.0b3 → py_geth-5.1.0}/setup.py +5 -4
  10. py_geth-5.1.0/tests/core/accounts/projects/test-01/geth/nodekey +1 -0
  11. py_geth-5.1.0/tests/core/accounts/projects/test-02/geth/LOCK +0 -0
  12. py_geth-5.1.0/tests/core/accounts/projects/test-02/geth/nodekey +1 -0
  13. py_geth-5.1.0/tests/core/accounts/projects/test-03/geth/LOCK +0 -0
  14. py_geth-5.1.0/tests/core/accounts/projects/test-03/geth/nodekey +1 -0
  15. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/running/test_running_mainnet_chain.py +15 -0
  16. py_geth-5.1.0/tests/core/waiting/conftest.py +0 -0
  17. {py_geth-5.0.0b3 → py_geth-5.1.0}/LICENSE +0 -0
  18. {py_geth-5.0.0b3 → py_geth-5.1.0}/MANIFEST.in +0 -0
  19. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/accounts.py +0 -0
  20. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/chain.py +0 -0
  21. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/default_blockchain_password +0 -0
  22. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/exceptions.py +0 -0
  23. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/genesis.json +0 -0
  24. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/main.py +0 -0
  25. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/mixins.py +0 -0
  26. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/py.typed +0 -0
  27. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/reset.py +0 -0
  28. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/types.py +0 -0
  29. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/utils/__init__.py +0 -0
  30. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/utils/encoding.py +0 -0
  31. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/utils/filesystem.py +0 -0
  32. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/utils/networking.py +0 -0
  33. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/utils/proc.py +0 -0
  34. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/utils/thread.py +0 -0
  35. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/utils/timeout.py +0 -0
  36. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/utils/validation.py +0 -0
  37. {py_geth-5.0.0b3 → py_geth-5.1.0}/geth/wrapper.py +0 -0
  38. {py_geth-5.0.0b3 → py_geth-5.1.0}/py_geth.egg-info/dependency_links.txt +0 -0
  39. {py_geth-5.0.0b3 → py_geth-5.1.0}/py_geth.egg-info/not-zip-safe +0 -0
  40. {py_geth-5.0.0b3 → py_geth-5.1.0}/py_geth.egg-info/top_level.txt +0 -0
  41. {py_geth-5.0.0b3 → py_geth-5.1.0}/pyproject.toml +0 -0
  42. {py_geth-5.0.0b3 → py_geth-5.1.0}/setup.cfg +0 -0
  43. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/accounts/conftest.py +0 -0
  44. /py_geth-5.0.0b3/tests/core/waiting/conftest.py → /py_geth-5.1.0/tests/core/accounts/projects/test-01/geth/LOCK +0 -0
  45. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/accounts/projects/test-01/keystore/UTC--2015-08-24T21-30-14.222885490Z--ae71658b3ab452f7e4f03bda6f777b860b2e2ff2 +0 -0
  46. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/accounts/projects/test-02/keystore/UTC--2015-08-24T21-30-14.222885490Z--ae71658b3ab452f7e4f03bda6f777b860b2e2ff2 +0 -0
  47. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/accounts/projects/test-02/keystore/UTC--2015-08-24T21-32-00.716418819Z--e8e085862a8d951dd78ec5ea784b3e22ee1ca9c6 +0 -0
  48. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/accounts/projects/test-02/keystore/UTC--2015-08-24T21-32-04.748321142Z--0da70f43a568e88168436be52ed129f4a9bbdaf5 +0 -0
  49. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/accounts/test_account_list_parsing.py +0 -0
  50. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/accounts/test_create_geth_account.py +0 -0
  51. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/accounts/test_geth_accounts.py +0 -0
  52. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/running/test_running_dev_chain.py +0 -0
  53. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/running/test_running_sepolia_chain.py +0 -0
  54. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/running/test_running_with_logging.py +0 -0
  55. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/running/test_use_as_a_context_manager.py +0 -0
  56. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/test_import_and_version.py +0 -0
  57. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/test_library_files.py +0 -0
  58. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/utility/test_constructing_test_chain_kwargs.py +0 -0
  59. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/utility/test_geth_version.py +0 -0
  60. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/utility/test_is_live_chain.py +0 -0
  61. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/utility/test_is_sepolia_chain.py +0 -0
  62. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/utility/test_validation.py +0 -0
  63. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/waiting/test_waiting_for_ipc_socket.py +0 -0
  64. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/core/waiting/test_waiting_for_rpc_connection.py +0 -0
  65. {py_geth-5.0.0b3 → py_geth-5.1.0}/tests/installation/test_geth_installation.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: py-geth
3
- Version: 5.0.0b3
3
+ Version: 5.1.0
4
4
  Summary: py-geth: Run Go-Ethereum as a subprocess
5
5
  Home-page: https://github.com/ethereum/py-geth
6
6
  Author: The Ethereum Foundation
@@ -20,9 +20,11 @@ Classifier: Programming Language :: Python :: 3.12
20
20
  Requires-Python: >=3.8, <4
21
21
  Description-Content-Type: text/markdown
22
22
  License-File: LICENSE
23
- Requires-Dist: semantic-version>=2.6.0
24
- Requires-Dist: pydantic>=2.6.0
25
23
  Requires-Dist: eval_type_backport>=0.1.0; python_version < "3.10"
24
+ Requires-Dist: pydantic>=2.6.0
25
+ Requires-Dist: requests>=2.23
26
+ Requires-Dist: semantic-version>=2.6.0
27
+ Requires-Dist: types-requests>=2.0.0
26
28
  Requires-Dist: typing-extensions>=4.0.1
27
29
  Provides-Extra: dev
28
30
  Requires-Dist: build>=0.9.0; extra == "dev"
@@ -30,7 +32,6 @@ Requires-Dist: bumpversion>=0.5.3; extra == "dev"
30
32
  Requires-Dist: ipython; extra == "dev"
31
33
  Requires-Dist: mypy==1.10.0; extra == "dev"
32
34
  Requires-Dist: pre-commit>=3.4.0; extra == "dev"
33
- Requires-Dist: requests>=2.20; extra == "dev"
34
35
  Requires-Dist: tox>=4.0.0; extra == "dev"
35
36
  Requires-Dist: twine; extra == "dev"
36
37
  Requires-Dist: wheel; extra == "dev"
@@ -165,19 +166,19 @@ the current list of supported versions.
165
166
  Installation can be done via the command line:
166
167
 
167
168
  ```bash
168
- $ python -m geth.install v1.14.7
169
+ $ python -m geth.install v1.14.12
169
170
  ```
170
171
 
171
172
  Or from python using the `install_geth` function.
172
173
 
173
174
  ```python
174
175
  >>> from geth import install_geth
175
- >>> install_geth('v1.14.7')
176
+ >>> install_geth('v1.14.12')
176
177
  ```
177
178
 
178
179
  The installed binary can be found in the `$HOME/.py-geth` directory, under your
179
- home directory. The `v1.14.7` binary would be located at
180
- `$HOME/.py-geth/geth-v1.14.7/bin/geth`.
180
+ home directory. The `v1.14.12` binary would be located at
181
+ `$HOME/.py-geth/geth-v1.14.12/bin/geth`.
181
182
 
182
183
  ## About `DevGethProcess`
183
184
 
@@ -118,19 +118,19 @@ the current list of supported versions.
118
118
  Installation can be done via the command line:
119
119
 
120
120
  ```bash
121
- $ python -m geth.install v1.14.7
121
+ $ python -m geth.install v1.14.12
122
122
  ```
123
123
 
124
124
  Or from python using the `install_geth` function.
125
125
 
126
126
  ```python
127
127
  >>> from geth import install_geth
128
- >>> install_geth('v1.14.7')
128
+ >>> install_geth('v1.14.12')
129
129
  ```
130
130
 
131
131
  The installed binary can be found in the `$HOME/.py-geth` directory, under your
132
- home directory. The `v1.14.7` binary would be located at
133
- `$HOME/.py-geth/geth-v1.14.7/bin/geth`.
132
+ home directory. The `v1.14.12` binary would be located at
133
+ `$HOME/.py-geth/geth-v1.14.12/bin/geth`.
134
134
 
135
135
  ## About `DevGethProcess`
136
136
 
@@ -20,3 +20,14 @@ from .process import (
20
20
  )
21
21
 
22
22
  __version__ = __version("py-geth")
23
+
24
+ __all__ = (
25
+ "install_geth",
26
+ "get_geth_version",
27
+ "InterceptedStreamsMixin",
28
+ "LoggingMixin",
29
+ "MainnetGethProcess",
30
+ "SepoliaGethProcess",
31
+ "TestnetGethProcess",
32
+ "DevGethProcess",
33
+ )
@@ -17,6 +17,13 @@ from typing import (
17
17
  Generator,
18
18
  )
19
19
 
20
+ import requests
21
+ from requests.exceptions import (
22
+ ConnectionError,
23
+ HTTPError,
24
+ Timeout,
25
+ )
26
+
20
27
  from geth.exceptions import (
21
28
  PyGethException,
22
29
  PyGethKeyError,
@@ -34,6 +41,11 @@ V1_14_4 = "v1.14.4"
34
41
  V1_14_5 = "v1.14.5"
35
42
  V1_14_6 = "v1.14.6"
36
43
  V1_14_7 = "v1.14.7"
44
+ V1_14_8 = "v1.14.8"
45
+ V1_14_9 = "v1.14.9"
46
+ V1_14_10 = "v1.14.10"
47
+ V1_14_11 = "v1.14.11"
48
+ V1_14_12 = "v1.14.12"
37
49
 
38
50
 
39
51
  LINUX = "linux"
@@ -211,29 +223,27 @@ DOWNLOAD_SOURCE_CODE_URI_TEMPLATE = (
211
223
  )
212
224
 
213
225
 
214
- def download_source_code_release(identifier: str) -> int:
226
+ def download_source_code_release(identifier: str) -> None:
215
227
  download_uri = DOWNLOAD_SOURCE_CODE_URI_TEMPLATE.format(identifier)
216
228
  source_code_archive_path = get_source_code_archive_path(identifier)
217
229
 
218
230
  ensure_parent_dir_exists(source_code_archive_path)
231
+ try:
232
+ response = requests.get(download_uri)
233
+ response.raise_for_status()
234
+ with open(source_code_archive_path, "wb") as f:
235
+ f.write(response.content)
219
236
 
220
- command = [
221
- "wget",
222
- download_uri,
223
- "-c", # resume previously incomplete download.
224
- "-O",
225
- source_code_archive_path,
226
- ]
227
-
228
- return check_subprocess_call(
229
- command,
230
- message=f"Downloading source code release from {download_uri}",
231
- )
237
+ print(f"Downloading source code release from {download_uri}")
238
+
239
+ except (HTTPError, Timeout, ConnectionError) as e:
240
+ raise PyGethException(
241
+ f"An error occurred while downloading from {download_uri}: {e}"
242
+ )
232
243
 
233
244
 
234
245
  def extract_source_code_release(identifier: str) -> None:
235
246
  source_code_archive_path = get_source_code_archive_path(identifier)
236
-
237
247
  source_code_extract_path = get_source_code_extract_path(identifier)
238
248
  ensure_path_exists(source_code_extract_path)
239
249
 
@@ -326,7 +336,11 @@ install_v1_14_4 = functools.partial(install_from_source_code_release, V1_14_4)
326
336
  install_v1_14_5 = functools.partial(install_from_source_code_release, V1_14_5)
327
337
  install_v1_14_6 = functools.partial(install_from_source_code_release, V1_14_6)
328
338
  install_v1_14_7 = functools.partial(install_from_source_code_release, V1_14_7)
329
-
339
+ install_v1_14_8 = functools.partial(install_from_source_code_release, V1_14_8)
340
+ install_v1_14_9 = functools.partial(install_from_source_code_release, V1_14_9)
341
+ install_v1_14_10 = functools.partial(install_from_source_code_release, V1_14_10)
342
+ install_v1_14_11 = functools.partial(install_from_source_code_release, V1_14_11)
343
+ install_v1_14_12 = functools.partial(install_from_source_code_release, V1_14_12)
330
344
 
331
345
  INSTALL_FUNCTIONS = {
332
346
  LINUX: {
@@ -337,6 +351,11 @@ INSTALL_FUNCTIONS = {
337
351
  V1_14_5: install_v1_14_5,
338
352
  V1_14_6: install_v1_14_6,
339
353
  V1_14_7: install_v1_14_7,
354
+ V1_14_8: install_v1_14_8,
355
+ V1_14_9: install_v1_14_9,
356
+ V1_14_10: install_v1_14_10,
357
+ V1_14_11: install_v1_14_11,
358
+ V1_14_12: install_v1_14_12,
340
359
  },
341
360
  OSX: {
342
361
  V1_14_0: install_v1_14_0,
@@ -346,6 +365,11 @@ INSTALL_FUNCTIONS = {
346
365
  V1_14_5: install_v1_14_5,
347
366
  V1_14_6: install_v1_14_6,
348
367
  V1_14_7: install_v1_14_7,
368
+ V1_14_8: install_v1_14_8,
369
+ V1_14_9: install_v1_14_9,
370
+ V1_14_10: install_v1_14_10,
371
+ V1_14_11: install_v1_14_11,
372
+ V1_14_12: install_v1_14_12,
349
373
  },
350
374
  }
351
375
 
@@ -186,18 +186,14 @@ class BaseGethProcess(ABC):
186
186
 
187
187
  @property
188
188
  def ipc_path(self) -> str:
189
- _ipc_path = self.geth_kwargs.get(
190
- "ipc_path",
191
- os.path.abspath(
192
- os.path.expanduser(
193
- os.path.join(
194
- self.data_dir,
195
- "geth.ipc",
196
- )
189
+ return self.geth_kwargs.get("ipc_path") or os.path.abspath(
190
+ os.path.expanduser(
191
+ os.path.join(
192
+ self.data_dir,
193
+ "geth.ipc",
197
194
  )
198
- ),
195
+ )
199
196
  )
200
- return cast(str, _ipc_path)
201
197
 
202
198
  @property
203
199
  def is_ipc_ready(self) -> bool:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: py-geth
3
- Version: 5.0.0b3
3
+ Version: 5.1.0
4
4
  Summary: py-geth: Run Go-Ethereum as a subprocess
5
5
  Home-page: https://github.com/ethereum/py-geth
6
6
  Author: The Ethereum Foundation
@@ -20,9 +20,11 @@ Classifier: Programming Language :: Python :: 3.12
20
20
  Requires-Python: >=3.8, <4
21
21
  Description-Content-Type: text/markdown
22
22
  License-File: LICENSE
23
- Requires-Dist: semantic-version>=2.6.0
24
- Requires-Dist: pydantic>=2.6.0
25
23
  Requires-Dist: eval_type_backport>=0.1.0; python_version < "3.10"
24
+ Requires-Dist: pydantic>=2.6.0
25
+ Requires-Dist: requests>=2.23
26
+ Requires-Dist: semantic-version>=2.6.0
27
+ Requires-Dist: types-requests>=2.0.0
26
28
  Requires-Dist: typing-extensions>=4.0.1
27
29
  Provides-Extra: dev
28
30
  Requires-Dist: build>=0.9.0; extra == "dev"
@@ -30,7 +32,6 @@ Requires-Dist: bumpversion>=0.5.3; extra == "dev"
30
32
  Requires-Dist: ipython; extra == "dev"
31
33
  Requires-Dist: mypy==1.10.0; extra == "dev"
32
34
  Requires-Dist: pre-commit>=3.4.0; extra == "dev"
33
- Requires-Dist: requests>=2.20; extra == "dev"
34
35
  Requires-Dist: tox>=4.0.0; extra == "dev"
35
36
  Requires-Dist: twine; extra == "dev"
36
37
  Requires-Dist: wheel; extra == "dev"
@@ -165,19 +166,19 @@ the current list of supported versions.
165
166
  Installation can be done via the command line:
166
167
 
167
168
  ```bash
168
- $ python -m geth.install v1.14.7
169
+ $ python -m geth.install v1.14.12
169
170
  ```
170
171
 
171
172
  Or from python using the `install_geth` function.
172
173
 
173
174
  ```python
174
175
  >>> from geth import install_geth
175
- >>> install_geth('v1.14.7')
176
+ >>> install_geth('v1.14.12')
176
177
  ```
177
178
 
178
179
  The installed binary can be found in the `$HOME/.py-geth` directory, under your
179
- home directory. The `v1.14.7` binary would be located at
180
- `$HOME/.py-geth/geth-v1.14.7/bin/geth`.
180
+ home directory. The `v1.14.12` binary would be located at
181
+ `$HOME/.py-geth/geth-v1.14.12/bin/geth`.
181
182
 
182
183
  ## About `DevGethProcess`
183
184
 
@@ -37,10 +37,16 @@ tests/core/accounts/conftest.py
37
37
  tests/core/accounts/test_account_list_parsing.py
38
38
  tests/core/accounts/test_create_geth_account.py
39
39
  tests/core/accounts/test_geth_accounts.py
40
+ tests/core/accounts/projects/test-01/geth/LOCK
41
+ tests/core/accounts/projects/test-01/geth/nodekey
40
42
  tests/core/accounts/projects/test-01/keystore/UTC--2015-08-24T21-30-14.222885490Z--ae71658b3ab452f7e4f03bda6f777b860b2e2ff2
43
+ tests/core/accounts/projects/test-02/geth/LOCK
44
+ tests/core/accounts/projects/test-02/geth/nodekey
41
45
  tests/core/accounts/projects/test-02/keystore/UTC--2015-08-24T21-30-14.222885490Z--ae71658b3ab452f7e4f03bda6f777b860b2e2ff2
42
46
  tests/core/accounts/projects/test-02/keystore/UTC--2015-08-24T21-32-00.716418819Z--e8e085862a8d951dd78ec5ea784b3e22ee1ca9c6
43
47
  tests/core/accounts/projects/test-02/keystore/UTC--2015-08-24T21-32-04.748321142Z--0da70f43a568e88168436be52ed129f4a9bbdaf5
48
+ tests/core/accounts/projects/test-03/geth/LOCK
49
+ tests/core/accounts/projects/test-03/geth/nodekey
44
50
  tests/core/running/test_running_dev_chain.py
45
51
  tests/core/running/test_running_mainnet_chain.py
46
52
  tests/core/running/test_running_sepolia_chain.py
@@ -1,5 +1,7 @@
1
- semantic-version>=2.6.0
2
1
  pydantic>=2.6.0
2
+ requests>=2.23
3
+ semantic-version>=2.6.0
4
+ types-requests>=2.0.0
3
5
  typing-extensions>=4.0.1
4
6
 
5
7
  [:python_version < "3.10"]
@@ -11,7 +13,6 @@ bumpversion>=0.5.3
11
13
  ipython
12
14
  mypy==1.10.0
13
15
  pre-commit>=3.4.0
14
- requests>=2.20
15
16
  tox>=4.0.0
16
17
  twine
17
18
  wheel
@@ -11,7 +11,6 @@ extras_require = {
11
11
  "ipython",
12
12
  "mypy==1.10.0",
13
13
  "pre-commit>=3.4.0",
14
- "requests>=2.20",
15
14
  "tox>=4.0.0",
16
15
  "twine",
17
16
  "wheel",
@@ -38,7 +37,7 @@ with open("./README.md") as readme:
38
37
  setup(
39
38
  name="py-geth",
40
39
  # *IMPORTANT*: Don't manually change the version here. Use the 'bumpversion' utility.
41
- version="5.0.0-beta.3",
40
+ version="5.1.0",
42
41
  description="""py-geth: Run Go-Ethereum as a subprocess""",
43
42
  long_description_content_type="text/markdown",
44
43
  long_description=long_description,
@@ -48,9 +47,11 @@ setup(
48
47
  include_package_data=True,
49
48
  py_modules=["geth"],
50
49
  install_requires=[
51
- "semantic-version>=2.6.0",
52
- "pydantic>=2.6.0",
53
50
  "eval_type_backport>=0.1.0; python_version < '3.10'",
51
+ "pydantic>=2.6.0",
52
+ "requests>=2.23",
53
+ "semantic-version>=2.6.0",
54
+ "types-requests>=2.0.0",
54
55
  "typing-extensions>=4.0.1",
55
56
  ],
56
57
  python_requires=">=3.8, <4",
@@ -0,0 +1 @@
1
+ bbcade0581fe7679e89f21946c728a382fc5b92d53bec428ad8111a39e382156
@@ -0,0 +1 @@
1
+ e27339b80b7dd3658b4704d90bafeb87d52b69b2c781a33cec764d07a3995450
@@ -0,0 +1 @@
1
+ cf767be1c9e7b8d7e7fe645c851122b1c1eca806f0fbab119793517a9644c670
@@ -1,3 +1,5 @@
1
+ import pytest
2
+
1
3
  from geth import (
2
4
  MainnetGethProcess,
3
5
  )
@@ -26,3 +28,16 @@ def test_live_chain_with_no_overrides():
26
28
  geth.stop()
27
29
 
28
30
  assert geth.is_stopped
31
+
32
+
33
+ @pytest.mark.parametrize(
34
+ "ipc_path",
35
+ [
36
+ "",
37
+ None,
38
+ ],
39
+ )
40
+ def test_ipc_path_always_returns_a_string(ipc_path):
41
+ geth = LoggedMainnetGethProcess(geth_kwargs={"ipc_path": ipc_path})
42
+
43
+ assert isinstance(geth.ipc_path, str)
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes