diff --git a/beetsplug/smartplaylist.py b/beetsplug/smartplaylist.py index 392c635f0..47d7414f4 100644 --- a/beetsplug/smartplaylist.py +++ b/beetsplug/smartplaylist.py @@ -208,14 +208,24 @@ class SmartPlaylistPlugin(BeetsPlugin): def matches(self, model, query, album_query): # Handle single query object for Album - if album_query and not isinstance(album_query, (list, tuple)) and isinstance(model, Album): + if ( + album_query + and not isinstance(album_query, (list, tuple)) + and isinstance(model, Album) + ): return album_query.match(model) # Handle tuple/list of queries for Album - elif isinstance(album_query, (list, tuple)) and isinstance(model, Album): + elif isinstance(album_query, (list, tuple)) and isinstance( + model, Album + ): return any(q.match(model) for q, _ in album_query) # Handle single query object for Item - if query and not isinstance(query, (list, tuple)) and isinstance(model, Item): + if ( + query + and not isinstance(query, (list, tuple)) + and isinstance(model, Item) + ): return query.match(model) # Handle tuple/list of queries for Item elif isinstance(query, (list, tuple)) and isinstance(model, Item): diff --git a/test/plugins/test_smartplaylist.py b/test/plugins/test_smartplaylist.py index 79055986f..1b994c094 100644 --- a/test/plugins/test_smartplaylist.py +++ b/test/plugins/test_smartplaylist.py @@ -54,10 +54,12 @@ class SmartPlaylistTest(BeetsTestCase): baz_baz = parse_query_string("BAZ baz", Item) baz_baz2 = parse_query_string("BAZ baz", Album) # Multiple queries are now stored as a tuple of (query, sort) tuples - bar_queries = tuple([ - parse_query_string("BAR bar1", Album), - parse_query_string("BAR bar2", Album), - ]) + bar_queries = tuple( + [ + parse_query_string("BAR bar1", Album), + parse_query_string("BAR bar2", Album), + ] + ) assert spl._unmatched_playlists == { ("foo", foo_foo, (None, None)), ("baz", baz_baz, baz_baz2),