Skip to content

Commit da6c088

Browse files
authored
Merge pull request #1109 from thunderstore-io/add-datetime-created-package-listing-endpoint
Add datetime_created to packagelisting api (TS-2343)
2 parents 57cd000 + 60aaf77 commit da6c088

File tree

3 files changed

+35
-0
lines changed

3 files changed

+35
-0
lines changed

django/thunderstore/api/cyberstorm/serializers/package.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,3 +54,4 @@ class CyberstormPackagePreviewSerializer(serializers.Serializer):
5454
)
5555
rating_count = serializers.IntegerField(min_value=0)
5656
size = serializers.IntegerField(min_value=0)
57+
datetime_created = serializers.DateTimeField()

django/thunderstore/api/cyberstorm/tests/test_package_listing_list.py

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,39 @@
3131
)
3232

3333

34+
@mock_base_package_list_api_view
35+
@pytest.mark.django_db
36+
def test_base_view__return_data_structure() -> None:
37+
pl = PackageListingFactory()
38+
request = APIRequestFactory().get("/")
39+
response = BasePackageListAPIView().dispatch(
40+
request,
41+
community_id=pl.community.identifier,
42+
)
43+
44+
expected_results_keys = [
45+
"categories",
46+
"community_identifier",
47+
"description",
48+
"download_count",
49+
"icon_url",
50+
"is_deprecated",
51+
"is_nsfw",
52+
"is_pinned",
53+
"last_updated",
54+
"name",
55+
"namespace",
56+
"rating_count",
57+
"size",
58+
"datetime_created",
59+
]
60+
61+
assert response.status_code == 200
62+
63+
response_results = response.data["results"][0]
64+
assert expected_results_keys == list(response_results.keys())
65+
66+
3467
@mock_base_package_list_api_view
3568
@pytest.mark.django_db
3669
def test_base_view__by_default__filters_out_inactive_packages() -> None:

django/thunderstore/api/cyberstorm/views/package_listing_list.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -238,6 +238,7 @@ def _get_packages_dicts(self, package_page: Page):
238238
"name": p.name,
239239
"rating_count": p.rating_count,
240240
"size": p.latest.file_size,
241+
"datetime_created": listing.datetime_created,
241242
},
242243
)
243244

0 commit comments

Comments
 (0)