diff --git a/src/calibre/db/tests/reading.py b/src/calibre/db/tests/reading.py index 5d1061ecae..a292340013 100644 --- a/src/calibre/db/tests/reading.py +++ b/src/calibre/db/tests/reading.py @@ -555,3 +555,16 @@ class ReadingTest(BaseTest): self.assertListEqual([2, 3, 1], ids) # }}} + def test_composites(self): # {{{ + cache = self.init_cache() + cache.create_custom_column('mult', 'CC1', 'composite', True, display={'composite_template': 'b,a,c'}) + cache.create_custom_column('single', 'CC1', 'composite', False, display={'composite_template': 'b,a,c'}) + + cache = self.init_cache() + # Test searching + self.assertEqual({1,2,3}, cache.search('#mult:=a')) + self.assertEqual(set(), cache.search('#mult:=b,a,c')) + self.assertEqual({1,2,3}, cache.search('#single:=b,a,c')) + self.assertEqual(set(), cache.search('#single:=b')) + # }}} + diff --git a/src/calibre/db/tests/writing.py b/src/calibre/db/tests/writing.py index b0862a147d..be24647dcd 100644 --- a/src/calibre/db/tests/writing.py +++ b/src/calibre/db/tests/writing.py @@ -556,7 +556,7 @@ class WritingTest(BaseTest): self.assertEqual(c.field_for('#series_index', 2), 4.0) # }}} - def test_composite(self): # {{{ + def test_composite_cache(self): # {{{ ' Test that the composite field cache is properly invalidated on writes ' cache = self.init_cache() cache.create_custom_column('tc', 'TC', 'composite', False, display={