Ejemplo n.º 1
0
 def test_split_on_feat(self):
     parts = ftintitle.split_on_feat("Alice ft. Bob")
     self.assertEqual(parts, ("Alice", "Bob"))
     parts = ftintitle.split_on_feat("Alice feat Bob")
     self.assertEqual(parts, ("Alice", "Bob"))
     parts = ftintitle.split_on_feat("Alice feat. Bob")
     self.assertEqual(parts, ("Alice", "Bob"))
     parts = ftintitle.split_on_feat("Alice featuring Bob")
     self.assertEqual(parts, ("Alice", "Bob"))
     parts = ftintitle.split_on_feat("Alice & Bob")
     self.assertEqual(parts, ("Alice", "Bob"))
     parts = ftintitle.split_on_feat("Alice and Bob")
     self.assertEqual(parts, ("Alice", "Bob"))
     parts = ftintitle.split_on_feat("Alice With Bob")
     self.assertEqual(parts, ("Alice", "Bob"))
     parts = ftintitle.split_on_feat("Alice defeat Bob")
     self.assertEqual(parts, ("Alice defeat Bob", None))
Ejemplo n.º 2
0
 def test_split_on_feat(self):
     parts = ftintitle.split_on_feat('Alice ft. Bob')
     self.assertEqual(parts, ('Alice', 'Bob'))
     parts = ftintitle.split_on_feat('Alice feat Bob')
     self.assertEqual(parts, ('Alice', 'Bob'))
     parts = ftintitle.split_on_feat('Alice feat. Bob')
     self.assertEqual(parts, ('Alice', 'Bob'))
     parts = ftintitle.split_on_feat('Alice featuring Bob')
     self.assertEqual(parts, ('Alice', 'Bob'))
     parts = ftintitle.split_on_feat('Alice & Bob')
     self.assertEqual(parts, ('Alice', 'Bob'))
     parts = ftintitle.split_on_feat('Alice and Bob')
     self.assertEqual(parts, ('Alice', 'Bob'))
     parts = ftintitle.split_on_feat('Alice With Bob')
     self.assertEqual(parts, ('Alice', 'Bob'))
     parts = ftintitle.split_on_feat('Alice defeat Bob')
     self.assertEqual(parts, ('Alice defeat Bob', None))
Ejemplo n.º 3
0
 def _components_from_item(self, item):
     """
     :param item:
     :type item: beets.library.Item
     :return: dictionary of track components
     :rtype dict
     """
     components = {
         "Album": item.album,
         "Track_name": item.title,
         "Track_num": item.track,
         "Artist": item.artist,
         "SortArtist": split_on_feat(item.artist)[0],  # Gorillaz ft the doors --> ('Gorillaz', 'The Doors')
         "DiscNumber": item.disc,
         "Year": item.year,
         "Genre": item.genre
     }
     return {k: six.u(str(v)) for k, v in six.iteritems(components)}