Skip to content

Commit b39f051

Browse files
committed
Add test for retrieving Customized Monthly schedule
1 parent fd187ba commit b39f051

File tree

2 files changed

+26
-0
lines changed

2 files changed

+26
-0
lines changed
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
<?xml version='1.0' encoding='UTF-8'?>
2+
<tsResponse xmlns="http://tableau.com/api" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://tableau.com/api http://tableau.com/api/ts-api-2.3.xsd">
3+
<schedule id="f048d794-90dc-40b0-bfad-2ca78e437369" name="Monthly customized" state="Active" priority="50" createdAt="2024-03-13T17:05:01Z" updatedAt="2024-03-16T16:05:14Z" type="Extract" frequency="Monthly" nextRunAt="2024-03-24T16:05:00Z" executionOrder="Parallel">
4+
<frequencyDetails start="17:05:00">
5+
<intervals>
6+
<interval monthDay="Customized Monthly"/>
7+
</intervals>
8+
</frequencyDetails>
9+
</schedule>
10+
</tsResponse>

test/test_schedule.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
GET_DAILY_ID_XML = os.path.join(TEST_ASSET_DIR, "schedule_get_daily_id.xml")
1616
GET_MONTHLY_ID_XML = os.path.join(TEST_ASSET_DIR, "schedule_get_monthly_id.xml")
1717
GET_MONTHLY_ID_2_XML = os.path.join(TEST_ASSET_DIR, "schedule_get_monthly_id_2.xml")
18+
GET_CUSTOMIZED_MONTHLY_ID_XML = os.path.join(TEST_ASSET_DIR, "schedule_get_customized_monthly_id.xml")
1819
GET_EMPTY_XML = os.path.join(TEST_ASSET_DIR, "schedule_get_empty.xml")
1920
CREATE_HOURLY_XML = os.path.join(TEST_ASSET_DIR, "schedule_create_hourly.xml")
2021
CREATE_DAILY_XML = os.path.join(TEST_ASSET_DIR, "schedule_create_daily.xml")
@@ -175,6 +176,21 @@ def test_get_monthly_by_id_2(self) -> None:
175176
self.assertEqual("Active", schedule.state)
176177
self.assertEqual(("Monday", "First"), schedule.interval_item.interval)
177178

179+
def test_get_customized_monthly_by_id(self) -> None:
180+
self.server.version = "3.15"
181+
with open(GET_CUSTOMIZED_MONTHLY_ID_XML, "rb") as f:
182+
response_xml = f.read().decode("utf-8")
183+
with requests_mock.mock() as m:
184+
schedule_id = "f048d794-90dc-40b0-bfad-2ca78e437369"
185+
baseurl = f"{self.server.baseurl}/schedules/{schedule_id}"
186+
m.get(baseurl, text=response_xml)
187+
schedule = self.server.schedules.get_by_id(schedule_id)
188+
self.assertIsNotNone(schedule)
189+
self.assertEqual(schedule_id, schedule.id)
190+
self.assertEqual("Monthly customized", schedule.name)
191+
self.assertEqual("Active", schedule.state)
192+
self.assertEqual(("Customized Monthly"), schedule.interval_item.interval)
193+
178194
def test_delete(self) -> None:
179195
with requests_mock.mock() as m:
180196
m.delete(self.baseurl + "/c9cff7f9-309c-4361-99ff-d4ba8c9f5467", status_code=204)

0 commit comments

Comments
 (0)