willisapi-client 1.7__tar.gz → 1.8__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 (38) hide show
  1. {willisapi_client-1.7 → willisapi_client-1.8}/PKG-INFO +1 -1
  2. {willisapi_client-1.7 → willisapi_client-1.8}/tests/test_auth.py +2 -2
  3. {willisapi_client-1.7 → willisapi_client-1.8}/tests/test_upload.py +1 -1
  4. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/__version__.py +1 -1
  5. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/services/auth/login_manager.py +3 -3
  6. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/services/upload/multipart_upload_handler.py +2 -2
  7. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/services/upload/upload_utils.py +5 -4
  8. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client.egg-info/PKG-INFO +1 -1
  9. {willisapi_client-1.7 → willisapi_client-1.8}/LICENSE +0 -0
  10. {willisapi_client-1.7 → willisapi_client-1.8}/MANIFEST.in +0 -0
  11. {willisapi_client-1.7 → willisapi_client-1.8}/README.md +0 -0
  12. {willisapi_client-1.7 → willisapi_client-1.8}/RELEASE.md +0 -0
  13. {willisapi_client-1.7 → willisapi_client-1.8}/requirements.txt +0 -0
  14. {willisapi_client-1.7 → willisapi_client-1.8}/setup.cfg +0 -0
  15. {willisapi_client-1.7 → willisapi_client-1.8}/setup.py +0 -0
  16. {willisapi_client-1.7 → willisapi_client-1.8}/tests/test_csv_validation.py +0 -0
  17. {willisapi_client-1.7 → willisapi_client-1.8}/tests/test_download.py +0 -0
  18. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/__init__.py +0 -0
  19. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/logging_setup.py +0 -0
  20. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/services/__init__.py +0 -0
  21. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/services/api.py +0 -0
  22. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/services/auth/__init__.py +0 -0
  23. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/services/auth/auth_utils.py +0 -0
  24. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/services/download/__init__.py +0 -0
  25. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/services/download/download_handler.py +0 -0
  26. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/services/download/download_utils.py +0 -0
  27. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/services/exceptions.py +0 -0
  28. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/services/upload/__init__.py +0 -0
  29. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/services/upload/csv_validation.py +0 -0
  30. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/services/upload/language_choices.py +0 -0
  31. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/services/upload/utils.py +0 -0
  32. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/timer.py +0 -0
  33. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client/willisapi_client.py +0 -0
  34. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client.egg-info/SOURCES.txt +0 -0
  35. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client.egg-info/dependency_links.txt +0 -0
  36. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client.egg-info/not-zip-safe +0 -0
  37. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client.egg-info/requires.txt +0 -0
  38. {willisapi_client-1.7 → willisapi_client-1.8}/willisapi_client.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: willisapi_client
3
- Version: 1.7
3
+ Version: 1.8
4
4
  Summary: A Python client for willisapi
5
5
  Home-page: https://github.com/bklynhlth/willsiapi_client
6
6
  Author: bklynhlth
@@ -1,12 +1,12 @@
1
1
  from willisapi_client.services.auth.login_manager import login
2
2
 
3
3
  from unittest.mock import patch
4
- from datetime import timedelta, datetime
4
+ from datetime import timedelta, datetime, timezone
5
5
 
6
6
 
7
7
  class TestLoginFunction:
8
8
  def setup_method(self):
9
- self.dt = datetime.now()
9
+ self.dt = datetime.now(timezone.utc)
10
10
  self.username = "dummy"
11
11
  self.password = "password"
12
12
  self.id_token = "dummy_token"
@@ -95,7 +95,7 @@ class TestUpload:
95
95
  mocked_df.return_value = pd.DataFrame([self.df_row], columns=self.df_cols)
96
96
  mock_row_validation.return_value = True, None
97
97
  mocked_upload.return_value = True, None
98
- df = upload(self.key, self.metadata, reupload="force")
98
+ df = upload(self.key, self.metadata, force_upload="true")
99
99
  num = len(df[df["upload_status"] == "success"])
100
100
  assert num == 1
101
101
  assert list(df.columns) == self.response_df_cols
@@ -1,7 +1,7 @@
1
1
  """Version details for willisapi_client
2
2
  """
3
3
  __client__ = "willisapi_client"
4
- __latestVersion__ = "1.7"
4
+ __latestVersion__ = "1.8"
5
5
  __url__ = "https://github.com/bklynhlth/willsiapi_client"
6
6
  __short_description__ = "A Python client for willisapi"
7
7
  __content_type__ = "text/markdown"
@@ -3,7 +3,7 @@ from typing import Tuple
3
3
  from http import HTTPStatus
4
4
 
5
5
  # import datetime
6
- from datetime import datetime, timedelta
6
+ from datetime import datetime, timedelta, timezone
7
7
 
8
8
  from willisapi_client.willisapi_client import WillisapiClient
9
9
  from willisapi_client.services.auth.auth_utils import AuthUtils
@@ -41,10 +41,10 @@ def login(username: str, password: str, **kwargs) -> Tuple[str, int]:
41
41
  ):
42
42
  logger.info("Login Successful; Key acquired")
43
43
  logger.info(
44
- f"Key expiration: {datetime.now() + timedelta(seconds=response['result']['expires_in'])}"
44
+ f"Key expiration: {datetime.now(timezone.utc) + timedelta(seconds=response['result']['expires_in'])}"
45
45
  )
46
46
  required_format = (
47
- f"{datetime.now() + timedelta(seconds=response['result']['expires_in'])}"
47
+ f"{datetime.now(timezone.utc) + timedelta(seconds=response['result']['expires_in'])}"
48
48
  )
49
49
  return (response["result"]["id_token"], required_format)
50
50
  else:
@@ -33,7 +33,7 @@ def upload(key, data, **kwargs):
33
33
  logger.info(f'{datetime.now().strftime("%H:%M:%S")}: csv check passed')
34
34
  dataframe = csv.get_dataframe()
35
35
  wc = WillisapiClient(env=kwargs.get("env"))
36
- reupload = "true" if kwargs.get("reupload") == "force" else "false"
36
+ force_upload = "true" if kwargs.get("force_upload") == True else False
37
37
  url = wc.get_upload_url()
38
38
  headers = wc.get_headers()
39
39
  headers["Authorization"] = key
@@ -43,7 +43,7 @@ def upload(key, data, **kwargs):
43
43
  (is_valid_row, error) = csv.validate_row(row)
44
44
  if is_valid_row:
45
45
  (uploaded, error) = UploadUtils.upload(
46
- index, row, url, headers, reupload
46
+ index, row, url, headers, force_upload
47
47
  )
48
48
  if uploaded:
49
49
  summary.append([row.file_path, "success", None])
@@ -102,7 +102,7 @@ class UploadUtils:
102
102
  return number_of_parts
103
103
 
104
104
  def initiate_multi_part_upload(
105
- index: int, row, url: str, headers: dict, reupload: str
105
+ index: int, row, url: str, headers: dict, force_upload: str
106
106
  ) -> Tuple[str, str]:
107
107
  """
108
108
  ------------------------------------------------------------------------------------------------------
@@ -146,7 +146,7 @@ class UploadUtils:
146
146
 
147
147
  try:
148
148
  response = requests.post(
149
- f"{url}?type=initiate&reupload={reupload}", json=data, headers=headers
149
+ f"{url}?type=initiate&force_upload={force_upload}", json=data, headers=headers
150
150
  )
151
151
  res_json = response.json()
152
152
  except Exception as ex:
@@ -171,6 +171,7 @@ class UploadUtils:
171
171
 
172
172
  else:
173
173
  if "message" in res_json and res_json["message"] == "Unauthorized":
174
+ error = res_json["message"]
174
175
  logger.error(
175
176
  "Your Key is expired. Login again to generate a new key"
176
177
  )
@@ -279,7 +280,7 @@ class UploadUtils:
279
280
  return SORTED_PARTS
280
281
 
281
282
  @staticmethod
282
- def upload(index, row, url, headers, reupload) -> Tuple[bool, str]:
283
+ def upload(index, row, url, headers, force_upload) -> Tuple[bool, str]:
283
284
  """
284
285
  ------------------------------------------------------------------------------------------------------
285
286
  Class: UploadUtils
@@ -302,7 +303,7 @@ class UploadUtils:
302
303
  ------------------------------------------------------------------------------------------------------
303
304
  """
304
305
  (upload_id, record_id, error) = UploadUtils.initiate_multi_part_upload(
305
- index, row, url, headers, reupload
306
+ index, row, url, headers, force_upload
306
307
  )
307
308
  uploaded = False
308
309
  if upload_id and record_id:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: willisapi-client
3
- Version: 1.7
3
+ Version: 1.8
4
4
  Summary: A Python client for willisapi
5
5
  Home-page: https://github.com/bklynhlth/willsiapi_client
6
6
  Author: bklynhlth
File without changes
File without changes
File without changes
File without changes