Skip to content

Commit c477795

Browse files
committed
Using dedicated Notion instance for testing
1 parent dfc4a18 commit c477795

9 files changed

Lines changed: 98 additions & 100 deletions

File tree

conftest.py

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,24 @@ def cover_url() -> str:
2222

2323
@fixture
2424
def example_page_id() -> str:
25-
return "e439b7a7296d45b98805f24c9cfc2115"
25+
return "2cef2075b1dc803a8ec3d142ac105817"
26+
27+
28+
@fixture(scope="session")
29+
def database_id() -> str:
30+
return "2cef2075b1dc8023b0ece0dbf9b278f7"
31+
32+
33+
@fixture(scope="session")
34+
def data_source_id1() -> str:
35+
return "2cef2075b1dc80bab834000b42b068d7"
36+
37+
38+
@fixture
39+
def data_source_id2() -> str:
40+
return "2cef2075b1dc80048d8d000b1b75df8f"
2641

2742

2843
@fixture
29-
def example_page_id_2() -> str:
30-
return "d5bce0a0fe6248d0a120c6c693d9b597"
44+
def block_id() -> str:
45+
return "2cef2075b1dc80a59d6ad9ed97846ff8"

python_notion_api/async_api/tests/test_async_api.py

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,29 +6,25 @@
66
from python_notion_api.async_api.notion_database import NotionDatabase
77
from python_notion_api.async_api.notion_page import NotionPage
88

9-
TEST_DATABASE_ID = "401076f6c7c04ae796bf3e4c847361e1"
10-
TEST_DATA_SOURCE_ID = "924fbc0cb38f4a09ac2f967266f5c743"
11-
TEST_BLOCK_ID = "f572e889cd374edbbd15d8bf13174bbc"
12-
139

1410
@async_fixture
15-
async def page(async_api, example_page_id_2):
16-
return await async_api.get_page(page_id=example_page_id_2)
11+
async def page(async_api, example_page_id):
12+
return await async_api.get_page(page_id=example_page_id)
1713

1814

1915
@async_fixture
20-
async def database(async_api):
21-
return await async_api.get_database(database_id=TEST_DATABASE_ID)
16+
async def database(async_api, database_id):
17+
return await async_api.get_database(database_id=database_id)
2218

2319

2420
@async_fixture
25-
async def data_source(async_api):
26-
return await async_api.get_data_source(data_source_id=TEST_DATA_SOURCE_ID)
21+
async def data_source(async_api, data_source_id1):
22+
return await async_api.get_data_source(data_source_id=data_source_id1)
2723

2824

2925
@async_fixture
30-
async def block(async_api):
31-
return await async_api.get_block(block_id=TEST_BLOCK_ID)
26+
async def block(async_api, block_id):
27+
return await async_api.get_block(block_id=block_id)
3228

3329

3430
@mark.asyncio

python_notion_api/async_api/tests/test_async_block.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,12 @@
66
from python_notion_api.async_api.notion_block import NotionBlock
77
from python_notion_api.models import ParagraphBlock, RichTextObject
88

9-
TEST_BLOCK_ID = "f572e889cd374edbbd15d8bf13174bbc"
10-
119

1210
@mark.asyncio
1311
class TestAsyncBlock:
1412
@async_fixture
15-
async def block(self, async_api):
16-
block = NotionBlock(block_id=TEST_BLOCK_ID, api=async_api)
13+
async def block(self, async_api, block_id):
14+
block = NotionBlock(block_id=block_id, api=async_api)
1715
await block.reload()
1816
return block
1917

python_notion_api/async_api/tests/test_async_data_source.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,13 @@
66
from python_notion_api.async_api.notion_data_source import NotionDataSource
77
from python_notion_api.async_api.notion_page import NotionPage
88

9-
TEST_DATA_SOURCE_ID = "924fbc0cb38f4a09ac2f967266f5c743"
10-
119

1210
@mark.asyncio
1311
class TestAsyncDataSource:
1412
@async_fixture
15-
async def data_source(self, async_api):
13+
async def data_source(self, async_api, data_source_id1):
1614
data_source = NotionDataSource(
17-
data_source_id=TEST_DATA_SOURCE_ID, api=async_api
15+
data_source_id=data_source_id1, api=async_api
1816
)
1917
await data_source.reload()
2018
return data_source

python_notion_api/async_api/tests/test_async_database.py

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,12 @@
44
from python_notion_api.async_api.notion_database import NotionDatabase
55
from python_notion_api.models.common import DataSourceObject
66

7-
TEST_DATABASE_ID = "401076f6c7c04ae796bf3e4c847361e1"
8-
TEST_DATA_SOURCE_IDS = [
9-
"28d751c8a89180ed80c8000b05bd4bb1",
10-
"924fbc0cb38f4a09ac2f967266f5c743",
11-
]
12-
137

148
@mark.asyncio
159
class TestAsyncDatabase:
1610
@async_fixture
17-
async def database(self, async_api):
18-
database = NotionDatabase(database_id=TEST_DATABASE_ID, api=async_api)
11+
async def database(self, async_api, database_id):
12+
database = NotionDatabase(database_id=database_id, api=async_api)
1913
await database.reload()
2014
return database
2115

@@ -33,16 +27,19 @@ async def test_get_title(self, database):
3327
title = database.title
3428
assert title is not None
3529

36-
async def test_get_data_sources(self, database):
30+
async def test_get_data_sources(self, database, data_source_id1,
31+
data_source_id2):
3732
data_sources = database.data_sources
3833
assert isinstance(data_sources, list)
3934

4035
data_sources.sort(key=lambda x: x.data_source_id)
4136

42-
for i, data_source in enumerate(data_sources):
43-
assert isinstance(data_source, DataSourceObject)
44-
assert (
45-
data_source.data_source_id.replace("-", "")
46-
== TEST_DATA_SOURCE_IDS[i]
47-
)
48-
assert data_source.data_source_name is not None
37+
assert len(data_sources) == 2
38+
assert isinstance(data_sources[0], DataSourceObject)
39+
assert data_sources[0].data_source_id.replace("-", "") == data_source_id2
40+
assert data_sources[0].data_source_name is not None
41+
assert isinstance(data_sources[1], DataSourceObject)
42+
assert data_sources[1].data_source_id.replace(
43+
"-", ""
44+
) == data_source_id1
45+
assert data_sources[1].data_source_name is not None

python_notion_api/async_api/tests/test_async_page.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@
1212
@mark.asyncio
1313
class TestAsyncPage:
1414
@async_fixture
15-
async def page(self, async_api, example_page_id_2):
16-
async_page = NotionPage(page_id=example_page_id_2, api=async_api)
15+
async def page(self, async_api, example_page_id):
16+
async_page = NotionPage(page_id=example_page_id, api=async_api)
1717
await async_page.reload()
1818
return async_page
1919

python_notion_api/async_api/tests/test_properties.py

Lines changed: 22 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,15 @@
1515
)
1616
from python_notion_api.models.sorts import Sort
1717

18-
TEST_DB = "401076f6c7c04ae796bf3e4c847361e1"
19-
TEST_DS = "924fbc0cb38f4a09ac2f967266f5c743"
18+
2019
TEST_TITLE = f"API Test {datetime.now(UTC).isoformat()}"
2120
TEST_TEXT = "Test text is boring"
2221
TEST_NUMBER = 12.5
2322
TEST_SELECT = "foo"
2423
TEST_STATUS = "In progress"
2524
TEST_MULTI_SELECT = ["foo", "bar", "baz"]
2625
TEST_DATE = datetime.now()
27-
TEST_PEOPLE = ["fa9e1df9-7c24-427c-9c20-eac629565fe4"]
26+
TEST_PEOPLE = ["2ced872b-594c-8176-a765-0002860b6fdc"]
2827
TEST_FILES = [File(name="foo.pdf", url="http://example.com/file")]
2928
TEST_CHECKBOX = True
3029
TEST_URL = "http://example.com"
@@ -33,22 +32,22 @@
3332

3433

3534
@async_fixture
36-
async def database(async_api):
37-
return await async_api.get_database(database_id=TEST_DB)
35+
async def database(async_api, database_id):
36+
return await async_api.get_database(database_id=database_id)
3837

3938

4039
@async_fixture
41-
async def data_source(async_api):
42-
return await async_api.get_data_source(data_source_id=TEST_DS)
40+
async def data_source(async_api, data_source_id1):
41+
return await async_api.get_data_source(data_source_id=data_source_id1)
4342

4443

4544
@mark.asyncio
4645
class TestCore:
47-
async def test_get_database(self, database):
48-
assert database.database_id == TEST_DB
46+
async def test_get_database(self, database, database_id):
47+
assert database.database_id == database_id
4948

50-
async def test_get_data_source(self, data_source):
51-
assert data_source.data_source_id == TEST_DS
49+
async def test_get_data_source(self, data_source, data_source_id1):
50+
assert data_source.data_source_id == data_source_id1
5251

5352
async def test_create_empty_page(self, data_source):
5453
new_page = await data_source.create_page()
@@ -81,18 +80,18 @@ def api(cls):
8180
return cls.async_api
8281

8382
@async_fixture(scope="class")
84-
async def data_source(cls, api):
83+
async def data_source(cls, api, data_source_id1):
8584
if not hasattr(cls, "async_data_source"):
8685
cls.async_data_source = await cls.async_api.get_data_source(
87-
data_source_id=TEST_DS
86+
data_source_id=data_source_id1
8887
)
8988
return cls.async_data_source
9089

9190
@async_fixture(scope="class")
92-
async def database(cls, api):
91+
async def database(cls, api, database_id):
9392
if not hasattr(cls, "async_database"):
9493
cls.async_database = await cls.async_api.get_database(
95-
database_id=TEST_DB
94+
database_id=database_id
9695
)
9796
return cls.async_database
9897

@@ -198,18 +197,18 @@ async def test_get_unique_id(self, page):
198197

199198
async def test_get_by_id(self, page):
200199
await page.set("Email", TEST_EMAIL)
201-
email = await page.get("%3E%5Ehh", cache=False)
200+
email = await page.get("FEe%40", cache=False)
202201
assert email == TEST_EMAIL
203202

204203
async def test_set_by_id(self, page):
205-
await page.set("%3E%5Ehh", TEST_EMAIL)
204+
await page.set("FEe%40", TEST_EMAIL)
206205
email = await page.get("Email", cache=False)
207206
assert email == TEST_EMAIL
208207

209208
async def test_update(self, page):
210209
await page.update(
211210
properties={
212-
"%3E%5Ehh": TEST_EMAIL,
211+
"FEe%40": TEST_EMAIL,
213212
"Phone": TEST_PHONE,
214213
"Multi-select": None,
215214
}
@@ -233,17 +232,15 @@ async def test_reload(self, page):
233232

234233
@mark.asyncio
235234
class TestRollups:
236-
NUMBER_PAGE_ID = "25e800a118414575ab30a8dc42689b74"
237-
DATE_PAGE_ID = "e38bb90faf8a436895f089fed2446cc6"
238-
EMPTY_ROLLUP_PAGE_ID = "2b5efae5bad24df884b4f953e3788b64"
235+
EMPTY_ROLLUP_PAGE_ID = "2cef2075b1dc80b5b67edc58426e92f2"
239236

240-
async def test_number_rollup(self, async_api):
241-
number_page = await async_api.get_page(self.NUMBER_PAGE_ID)
237+
async def test_number_rollup(self, async_api, example_page_id):
238+
number_page = await async_api.get_page(example_page_id)
242239
num = await number_page.get("Number rollup")
243240
assert num == 10
244241

245-
async def test_date_rollup(self, async_api):
246-
date_page = await async_api.get_page(self.DATE_PAGE_ID)
242+
async def test_date_rollup(self, async_api, example_page_id):
243+
date_page = await async_api.get_page(example_page_id)
247244
date = await date_page.get("Date rollup")
248245
assert isinstance(date.start, datetime)
249246

python_notion_api/async_api/tests/test_query.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@
77
async def main():
88
api = AsyncNotionAPI(access_token=os.environ["NOTION_TOKEN"])
99

10-
db = await api.get_database(database_id="c0802577c79645e5af855f0ca46148b2")
10+
db = await api.get_data_source(
11+
data_source_id="2cef2075b1dc80bab834000b42b068d7")
1112

1213
async for page in db.query():
1314
print(await page.get("title"))

0 commit comments

Comments
 (0)