Coverage for src/dto/track_dto.py : 100%
Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
1from flask_restx import Namespace, fields
3from .base import TrackBaseObj, TrackItemObj, paginationObj, messageObj, TrackAdditionalBaseObj
6class TrackDto:
7 api = Namespace("track", description="Track related operations.")
9 # Objects
10 api.models[TrackBaseObj.name] = TrackBaseObj
11 track_base = TrackBaseObj
13 api.models[TrackItemObj.name] = TrackItemObj
14 track_item = TrackItemObj
16 api.models[TrackAdditionalBaseObj.name] = TrackAdditionalBaseObj
17 track_additional_base = TrackAdditionalBaseObj
19 track_history = api.model("TrackHistory", {
20 "last_played_date": fields.DateTime,
21 "track": fields.Nested(track_item)
22 })
24 # Responses
25 data_resp = api.clone(
26 "Track list Data Response",
27 paginationObj,
28 {
29 "content": fields.List(fields.Nested(track_item)),
30 },
31 )
33 history_resp = api.clone(
34 "TrackListenedHistory Data Response",
35 paginationObj,
36 {
37 "content": fields.List(fields.Nested(track_history))
38 }
39 )
41 track_bad_recommendation = api.model(
42 "TrackBadRecommendationMetaExpected",
43 {
44 "year": fields.List(fields.String),
45 "artist_name": fields.List(fields.String),
46 "release": fields.List(fields.String),
47 "genres": fields.List(fields.String)
48 }
49 )