intelion-cloud 0.2.2__tar.gz → 0.2.3__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.
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/PKG-INFO +1 -1
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/__init__.py +1 -1
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/models/servers.py +4 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud.egg-info/PKG-INFO +1 -1
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/pyproject.toml +1 -1
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/tests/test_models.py +10 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/LICENSE +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/README.md +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/_client.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/_pagination.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/_transport.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/constants.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/exceptions.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/models/__init__.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/models/_base.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/models/components.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/models/flavors.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/models/users.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/resources/__init__.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/resources/_base.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/resources/cloud_servers.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/resources/flavors.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/resources/os_images.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud/resources/users.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud.egg-info/SOURCES.txt +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud.egg-info/dependency_links.txt +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud.egg-info/requires.txt +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/intelion_cloud.egg-info/top_level.txt +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/setup.cfg +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/tests/test_client.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/tests/test_cloud_servers.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/tests/test_flavors.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/tests/test_transport.py +0 -0
- {intelion_cloud-0.2.2 → intelion_cloud-0.2.3}/tests/test_users.py +0 -0
|
@@ -44,6 +44,8 @@ class UsageAct:
|
|
|
44
44
|
cloud_server_uptime_seconds: int = 0
|
|
45
45
|
cloud_srv_price_rub_cents: int = 0
|
|
46
46
|
actual_cost_rub_cents: int = 0
|
|
47
|
+
spent_amount_rub_cents: int = 0
|
|
48
|
+
refund_amount_rub_cents: int = 0
|
|
47
49
|
next_payment: Optional[DebtInfo] = None
|
|
48
50
|
|
|
49
51
|
@classmethod
|
|
@@ -61,6 +63,8 @@ class UsageAct:
|
|
|
61
63
|
cloud_server_uptime_seconds=data.get("cloud_server_uptime_seconds", 0),
|
|
62
64
|
cloud_srv_price_rub_cents=data.get("cloud_srv_price_rub_cents", 0),
|
|
63
65
|
actual_cost_rub_cents=data.get("actual_cost_rub_cents", 0),
|
|
66
|
+
spent_amount_rub_cents=data.get("spent_amount_rub_cents", 0),
|
|
67
|
+
refund_amount_rub_cents=data.get("refund_amount_rub_cents", 0),
|
|
64
68
|
next_payment=_parse_nested(data, "next_payment", DebtInfo),
|
|
65
69
|
)
|
|
66
70
|
|
|
@@ -123,9 +123,19 @@ class TestUsageAct:
|
|
|
123
123
|
assert act.id == 100
|
|
124
124
|
assert act.user_config_id == 42
|
|
125
125
|
assert act.cloud_server_uptime_seconds == 3600
|
|
126
|
+
assert act.spent_amount_rub_cents == 16071
|
|
127
|
+
assert act.refund_amount_rub_cents == 0
|
|
126
128
|
assert act.next_payment is not None
|
|
127
129
|
assert act.next_payment.amount_rub_cents == 16071
|
|
128
130
|
|
|
131
|
+
def test_spent_refund_default_when_missing(self):
|
|
132
|
+
# Backward compat: older API responses don't include the new fields.
|
|
133
|
+
payload = {k: v for k, v in SAMPLE_USAGE_ACT.items()
|
|
134
|
+
if k not in ("spent_amount_rub_cents", "refund_amount_rub_cents")}
|
|
135
|
+
act = UsageAct.from_dict(payload)
|
|
136
|
+
assert act.spent_amount_rub_cents == 0
|
|
137
|
+
assert act.refund_amount_rub_cents == 0
|
|
138
|
+
|
|
129
139
|
|
|
130
140
|
class TestCloudServer:
|
|
131
141
|
def test_from_dict_full(self):
|
|
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
|
|
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
|