ownerrez-wrapper 0.1.0__py3-none-any.whl → 0.2.0__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
@@ -8,8 +8,9 @@ A Python wrapper for the OwnerRez API.
8
8
  from .api import API
9
9
  from .cli import main as cli
10
10
 
11
- __version__ = "0.1.0"
11
+ __version__ = "0.2.0"
12
12
  __author__ = "Geody Moore"
13
- __email__ = "geody.moore@gmail.com"
13
+ __author_email__ = "geody.moore@gmail.com"
14
+ __description__ = "A Python wrapper for the OwnerRez API"
14
15
 
15
16
  __all__ = ["API", "cli"]
ownerrez_wrapper/api.py CHANGED
@@ -48,9 +48,14 @@ class API(object):
48
48
  params = {'since_utc': since_utc, 'property_id': property_id}
49
49
  booking_list = restAdapt.get(endpoint='bookings', ep_params=params)
50
50
 
51
- for booking in booking_list.data['items']:
52
- booking = Booking(**booking)
53
- results.append(booking)
51
+ if isinstance(booking_list.data, list):
52
+ for booking in booking_list.data:
53
+ booking = Booking(**booking)
54
+ results.append(booking)
55
+ elif isinstance(booking_list.data, dict) and 'items' in booking_list.data:
56
+ for booking in booking_list.data['items']:
57
+ booking = Booking(**booking)
58
+ results.append(booking)
54
59
  return results
55
60
 
56
61
  def getbooking(self, booking_id: int) -> Booking:
@@ -76,9 +81,11 @@ class API(object):
76
81
  today = datetime.today()
77
82
  bookings = self.getbookings(property_id=property_id, since_utc=today)
78
83
  for booking in bookings:
84
+ if booking.is_block:
85
+ continue
79
86
  # Convert string dates to datetime if they aren't already
80
87
  arrival = booking.arrival if isinstance(booking.arrival, datetime) else datetime.strptime(booking.arrival, "%Y-%m-%d")
81
88
  departure = booking.departure if isinstance(booking.departure, datetime) else datetime.strptime(booking.departure, "%Y-%m-%d")
82
- if arrival <= today and departure >= today:
89
+ if arrival <= today and departure >= today and booking.status == "active":
83
90
  return True
84
91
  return False
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: ownerrez-wrapper
3
- Version: 0.1.0
3
+ Version: 0.2.0
4
4
  Summary: A Python wrapper for the OwnerRez API
5
5
  Home-page: https://github.com/gmoorevt/ownerrez-wrapper
6
6
  Author: Geody Moore
@@ -0,0 +1,15 @@
1
+ ownerrez_wrapper/__init__.py,sha256=T9VhZnbqMPykgLwmg7Ze8zKb0lVys5aKP3t83umPKck,317
2
+ ownerrez_wrapper/api.py,sha256=CBvstz4MqTb8OPaT_fOniRb4JxYDd0XckjCCub3mouQ,3356
3
+ ownerrez_wrapper/cli.py,sha256=44xW8FJk1YgIhqerP93hkHAWGTIWjakgRv_cpeZs7UI,4132
4
+ ownerrez_wrapper/constants.py,sha256=Ix4x3_9aXUymp6Kcl2AzxrGM2EXHghD0-uYZLclYTVU,49
5
+ ownerrez_wrapper/exceptions.py,sha256=HKIlPHD9A-J8aXnTglPYcxo6hx-_zQQtCgNoEgVklQI,97
6
+ ownerrez_wrapper/model.py,sha256=Gps5BlP-0jhP7P7ludbRAuvm9g2HSiaN4cGtN76u9MM,7289
7
+ ownerrez_wrapper/restAdapter.py,sha256=nFEs8XEOYnwGCTDiEQB4gQi5e7HTjm4Bys_NMTJGIlc,3254
8
+ tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
+ tests/test_api.py,sha256=RJ9suPSmL7uix_55QtLCdrbh1GrN2fb02exu78usL9w,4340
10
+ ownerrez_wrapper-0.2.0.dist-info/LICENSE,sha256=K_mUywmexnvIytD3Tez6g71VomULBMeiG5T0vpswsuc,1068
11
+ ownerrez_wrapper-0.2.0.dist-info/METADATA,sha256=-5uvP5UuSzzcJOX2lK_6AG4dHFqUz2Ps8K11_ZPSlcQ,4976
12
+ ownerrez_wrapper-0.2.0.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
13
+ ownerrez_wrapper-0.2.0.dist-info/entry_points.txt,sha256=_VDZya-q8qV4nm6vSOuaWFoX5Mp7v3ToTY-uyY-vlU4,55
14
+ ownerrez_wrapper-0.2.0.dist-info/top_level.txt,sha256=byMzRUOQek_TqAI4k_0nj4xi9HtKKoHZ_t4XBIwUduU,23
15
+ ownerrez_wrapper-0.2.0.dist-info/RECORD,,
tests/test_api.py CHANGED
@@ -110,6 +110,10 @@ def test_isunitbooked(api, mock_booking_response, monkeypatch):
110
110
  def mock_get(*args, **kwargs):
111
111
  return Result(status=200, message="OK", data=mock_booking_response)
112
112
 
113
+ # Update mock response to include status and is_block fields
114
+ mock_booking_response['items'][0]['status'] = 'active'
115
+ mock_booking_response['items'][0]['is_block'] = False
116
+
113
117
  monkeypatch.setattr("ownerrez_wrapper.restAdapter.RestAdapter.get", mock_get)
114
118
  is_booked = api.isunitbooked(property_id=1)
115
119
  assert is_booked is True
@@ -119,6 +123,10 @@ def test_isunitbooked_not_booked(api, mock_booking_response, monkeypatch):
119
123
  def mock_get(*args, **kwargs):
120
124
  return Result(status=200, message="OK", data=mock_booking_response)
121
125
 
126
+ # Update mock response to include status and is_block fields
127
+ mock_booking_response['items'][0]['status'] = 'active'
128
+ mock_booking_response['items'][0]['is_block'] = False
129
+
122
130
  monkeypatch.setattr("ownerrez_wrapper.restAdapter.RestAdapter.get", mock_get)
123
131
  is_booked = api.isunitbooked(property_id=1)
124
132
  assert is_booked is False
@@ -1,15 +0,0 @@
1
- ownerrez_wrapper/__init__.py,sha256=S4PQiSD4uqBXFDlnQZ6tLDRX_KHH8EAtVZjDZSecubM,252
2
- ownerrez_wrapper/api.py,sha256=sD_hlZ5Slb7cprI6os4nVdPeQSYsqteuDQ-DWFw70N4,2993
3
- ownerrez_wrapper/cli.py,sha256=44xW8FJk1YgIhqerP93hkHAWGTIWjakgRv_cpeZs7UI,4132
4
- ownerrez_wrapper/constants.py,sha256=Ix4x3_9aXUymp6Kcl2AzxrGM2EXHghD0-uYZLclYTVU,49
5
- ownerrez_wrapper/exceptions.py,sha256=HKIlPHD9A-J8aXnTglPYcxo6hx-_zQQtCgNoEgVklQI,97
6
- ownerrez_wrapper/model.py,sha256=Gps5BlP-0jhP7P7ludbRAuvm9g2HSiaN4cGtN76u9MM,7289
7
- ownerrez_wrapper/restAdapter.py,sha256=nFEs8XEOYnwGCTDiEQB4gQi5e7HTjm4Bys_NMTJGIlc,3254
8
- tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
- tests/test_api.py,sha256=g8POEEiBjh6rxWiIJTbgv0kc7c7kSBvyEbHhUsNk80c,3966
10
- ownerrez_wrapper-0.1.0.dist-info/LICENSE,sha256=K_mUywmexnvIytD3Tez6g71VomULBMeiG5T0vpswsuc,1068
11
- ownerrez_wrapper-0.1.0.dist-info/METADATA,sha256=1ZDJmddxB976zPQqGScUaV65-edJVN0kHk5p-sF5wKw,4976
12
- ownerrez_wrapper-0.1.0.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
13
- ownerrez_wrapper-0.1.0.dist-info/entry_points.txt,sha256=_VDZya-q8qV4nm6vSOuaWFoX5Mp7v3ToTY-uyY-vlU4,55
14
- ownerrez_wrapper-0.1.0.dist-info/top_level.txt,sha256=byMzRUOQek_TqAI4k_0nj4xi9HtKKoHZ_t4XBIwUduU,23
15
- ownerrez_wrapper-0.1.0.dist-info/RECORD,,