Source code for tests.resources
"""
tests.resources
~~~~~~~~~~~~~~~
Resources used for test purposes.
"""
# :copyright: (c) 2016-2020 by Nicholas Repole and contributors.
# See AUTHORS for more details.
# :license: MIT - See LICENSE for more details.
from drowsy.resource import ModelResource
from .schemas import (
AlbumCamelSchema, AlbumSchema, ArtistCamelSchema, ArtistSchema,
CompositeOneSchema, CompositeOneCamelSchema, CompositeManySchema,
CompositeManyCamelSchema, CompositeNodeCamelSchema, CompositeNodeSchema,
CustomerCamelSchema, CustomerSchema, EmployeeCamelSchema, EmployeeSchema,
GenreCamelSchema, GenreSchema, InvoiceLineCamelSchema, InvoiceLineSchema,
InvoiceCamelSchema, InvoiceSchema, MediaTypeCamelSchema, MediaTypeSchema,
NodeCamelSchema, NodeSchema, PlaylistCamelSchema, PlaylistSchema,
TrackCamelSchema, TrackSchema, TrackStatsSchema
)
[docs]
def page_max_100(resource):
"""Always returns 100 as the page max size."""
if resource is not None:
return 100
[docs]
class AlbumResource(ModelResource):
[docs]
class InvoiceLineResource(ModelResource):
[docs]
class InvoiceResource(ModelResource):
[docs]
class EmployeeResource(ModelResource):
[docs]
class CustomerResource(ModelResource):
[docs]
class PlaylistResource(ModelResource):
[docs]
class GenreResource(ModelResource):
[docs]
class TrackResource(ModelResource):
[docs]
def get_required_filters(self, alias=None):
model = alias or self.model
if self.context.get("user") == "limited":
# NOTE: Should split this out into a different test...
filters = (model.track_id != 130, )
return filters
elif self.context.get("user") == "limited_single_filter":
filters = model.track_id != 130
return filters
return None
[docs]
class TrackStatsResource(ModelResource):
[docs]
class ArtistResource(ModelResource):
[docs]
class NodeResource(ModelResource):
[docs]
class CompositeNodeResource(ModelResource):
[docs]
class CompositeOneResource(ModelResource):
[docs]
class CompositeManyResource(ModelResource):
[docs]
class AlbumCamelResource(ModelResource):
[docs]
class InvoiceLineCamelResource(ModelResource):
[docs]
class InvoiceCamelResource(ModelResource):
[docs]
class EmployeeCamelResource(ModelResource):
[docs]
class CustomerCamelResource(ModelResource):
[docs]
class PlaylistCamelResource(ModelResource):
[docs]
class GenreCamelResource(ModelResource):
[docs]
class TrackCamelResource(ModelResource):
[docs]
class ArtistCamelResource(ModelResource):
[docs]
class NodeCamelResource(ModelResource):
[docs]
class CompositeNodeCamelResource(ModelResource):
[docs]
class CompositeOneCamelResource(ModelResource):
[docs]
class CompositeManyCamelResource(ModelResource):