class TestListField(TestCase): def setUp(self): class A(object): def __init__(self, value): self.value = value def __eq__(self, other): return self.value == other.value def from_python(self): return self.value self.A = A self.lf = ListField(self.A, help='help') def test_init(self): self.assertEqual(self.lf.item_cls, self.A) self.assertEqual(self.lf.help, 'help') def test_to_python(self): before = ['alpha', 'bravo', 'charlie'] after = self.lf.to_python(before) self.assertEqual([self.A('alpha'), self.A('bravo'), self.A('charlie')], after) def test_from_python(self): before = [self.A('alpha'), self.A('bravo')] after = ['alpha', 'bravo'] self.assertEqual(self.lf.from_python(before), after)
def setUp(self): class A(object): def __init__(self, value): self.value = value def __eq__(self, other): return self.value == other.value def from_python(self): return self.value self.A = A self.lf = ListField(self.A, help='help')
class Show(APIObject): _fields = [ 'showName', 'channelName', 'videoLink', 'mobileLink', 'logo', 'fanart', 'playlists', 'tvdbSeriesId' ] channelName = EnumField(ChannelNameEnum) playlists = ListField(Playlist) def __repr__(self): return '<Show name=\'{0}\'>'.format(self.showName)
class MediaRenditionItemCollection(ItemCollection): _item_class = AMFRendition items = ListField(AMFRendition)
class PlaylistItemCollection(ItemCollection): _item_class = Playlist items = ListField(Playlist)
class ShowItemCollection(ItemCollection): _item_class = Show items = ListField(Show)