dcicutils 8.8.4.1b9__py3-none-any.whl → 8.8.4.1b11__py3-none-any.whl

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.
dcicutils/file_utils.py CHANGED
@@ -103,12 +103,29 @@ def are_files_equal(filea: str, fileb: str) -> bool:
103
103
 
104
104
  def create_random_file(file: Optional[str] = None,
105
105
  prefix: Optional[str] = None, suffix: Optional[str] = None,
106
- nbytes: int = 1024, binary: bool = False) -> str:
107
- if not file:
106
+ nbytes: int = 1024, binary: bool = False, line_length: Optional[int] = None) -> str:
107
+ if not isinstance(nbytes, int) or nbytes < 0:
108
+ nbytes = 0
109
+ if not isinstance(file, str) or not file:
110
+ if not isinstance(prefix, str):
111
+ prefix = ""
112
+ if not isinstance(suffix, str):
113
+ suffix = ""
108
114
  file = create_temporary_file_name(prefix=prefix, suffix=suffix)
109
115
  with open(file, "wb" if binary is True else "w") as f:
110
116
  if binary is True:
111
117
  f.write(os.urandom(nbytes))
112
118
  else:
113
- f.write(''.join(random.choices(string.ascii_letters + string.digits, k=nbytes)))
119
+ if (not isinstance(line_length, int)) or (line_length < 1):
120
+ line_length = 80
121
+ line_length += 1
122
+ nlines = nbytes // line_length
123
+ nremainder = nbytes % line_length
124
+ for n in range(nlines):
125
+ f.write("".join(random.choices(string.ascii_letters + string.digits, k=line_length - 1)))
126
+ f.write("\n")
127
+ if nremainder > 1:
128
+ f.write("".join(random.choices(string.ascii_letters + string.digits, k=nremainder - 1)))
129
+ if nremainder > 0:
130
+ f.write("\n")
114
131
  return file
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dcicutils
3
- Version: 8.8.4.1b9
3
+ Version: 8.8.4.1b11
4
4
  Summary: Utility package for interacting with the 4DN Data Portal and other 4DN resources
5
5
  Home-page: https://github.com/4dn-dcic/utils
6
6
  License: MIT
@@ -28,7 +28,7 @@ dcicutils/es_utils.py,sha256=ZksLh5ei7kRUfiFltk8sd2ZSfh15twbstrMzBr8HNw4,7541
28
28
  dcicutils/exceptions.py,sha256=4giQGtpak-omQv7BP6Ckeu91XK5fnDosC8gfdmN_ccA,9931
29
29
  dcicutils/ff_mocks.py,sha256=6RKS4eUiu_Wl8yP_8V0CaV75w4ZdWxdCuL1CVlnMrek,36918
30
30
  dcicutils/ff_utils.py,sha256=oIhuZPnGtfwj6bWyCc1u23JbMB_6InPp01ZqUOljd8M,73123
31
- dcicutils/file_utils.py,sha256=dV2Iz180-JADOBad2UWxr-DgQLRZXIzASMgeCllFODU,4896
31
+ dcicutils/file_utils.py,sha256=uZFhYA1G_cNVX8cnqFhwjCSLbOO3Maa6zTYq6V-ORew,5656
32
32
  dcicutils/function_cache_decorator.py,sha256=XMyiEGODVr2WoAQ68vcoX_9_Xb9p8pZXdXl7keU8i2g,10026
33
33
  dcicutils/glacier_utils.py,sha256=Q4CVXsZCbP-SoZIsZ5NMcawDfelOLzbQnIlQn-GdlTo,34149
34
34
  dcicutils/http_utils.py,sha256=RB0x9hRMZM9Xd1x00c5J0iUzUdYzIQR0XKFiQ94HWO0,807
@@ -73,8 +73,8 @@ dcicutils/trace_utils.py,sha256=g8kwV4ebEy5kXW6oOrEAUsurBcCROvwtZqz9fczsGRE,1769
73
73
  dcicutils/validation_utils.py,sha256=cMZIU2cY98FYtzK52z5WUYck7urH6JcqOuz9jkXpqzg,14797
74
74
  dcicutils/variant_utils.py,sha256=2H9azNx3xAj-MySg-uZ2SFqbWs4kZvf61JnK6b-h4Qw,4343
75
75
  dcicutils/zip_utils.py,sha256=_Y9EmL3D2dUZhxucxHvrtmmlbZmK4FpSsHEb7rGSJLU,3265
76
- dcicutils-8.8.4.1b9.dist-info/LICENSE.txt,sha256=qnwSmfnEWMl5l78VPDEzAmEbLVrRqQvfUQiHT0ehrOo,1102
77
- dcicutils-8.8.4.1b9.dist-info/METADATA,sha256=yo_JoulN0vXbXDxvUWgAR8YXS2EuErrd5ITyEFcrEmM,3396
78
- dcicutils-8.8.4.1b9.dist-info/WHEEL,sha256=7Z8_27uaHI_UZAc4Uox4PpBhQ9Y5_modZXWMxtUi4NU,88
79
- dcicutils-8.8.4.1b9.dist-info/entry_points.txt,sha256=51Q4F_2V10L0282W7HFjP4jdzW4K8lnWDARJQVFy_hw,270
80
- dcicutils-8.8.4.1b9.dist-info/RECORD,,
76
+ dcicutils-8.8.4.1b11.dist-info/LICENSE.txt,sha256=qnwSmfnEWMl5l78VPDEzAmEbLVrRqQvfUQiHT0ehrOo,1102
77
+ dcicutils-8.8.4.1b11.dist-info/METADATA,sha256=-DlCLMTUa84j_dv7uHt_rZPpYXe_U5Nkr2SgDDOA8rU,3397
78
+ dcicutils-8.8.4.1b11.dist-info/WHEEL,sha256=7Z8_27uaHI_UZAc4Uox4PpBhQ9Y5_modZXWMxtUi4NU,88
79
+ dcicutils-8.8.4.1b11.dist-info/entry_points.txt,sha256=51Q4F_2V10L0282W7HFjP4jdzW4K8lnWDARJQVFy_hw,270
80
+ dcicutils-8.8.4.1b11.dist-info/RECORD,,