Esempio n. 1
0
    def test_normal_case(self):
        p = PlayList()

        p.load_data(StringIO(INPUT))
        p.apply_changes(StringIO(CHANGE))
        output = StringIO()
        p.gen_output(output)
        obj = json.loads(output.getvalue())
        self.assertEqual(len(obj['users']), 1)
        self.assertEqual(obj['users'][0]['id'], '1')
        self.assertEqual(len(obj['playlists']), 2)
        self.assertEqual(obj['playlists'][0]['id'], '2')
        self.assertEqual(obj['playlists'][0]['song_ids'], ['1', '2'])
        self.assertEqual(obj['playlists'][1]['id'], '3')
        self.assertEqual(obj['playlists'][1]['song_ids'], ['1', '2'])
Esempio n. 2
0
 def test_not_allow_duplicate_song_in_playlist(self):
     change = """
         [
             {
                 "type": "add_song_to_playlist",
                 "playlist_id": "1",
                 "song_ids" : ["1"]
             }
         ]
     """
     p = PlayList()
     p.load_data(StringIO(INPUT))
     p.apply_changes(StringIO(change))
     output = StringIO()
     p.gen_output(output)
     obj = json.loads(output.getvalue())
     self.assertEqual(len(obj['playlists'][0]['song_ids']), 2)