def test_no_longer_searchable_removes_flag(self):
     self.assertEqual(get_searchable_fields(IBaz), [])
     searchable(IBaz, u'baz')
     self.assertEqual(get_searchable_fields(IBaz), ['baz'])
     self.assertTrue(no_longer_searchable(IBaz, 'baz'))
     self.assertFalse(no_longer_searchable(IBaz, 'baz'))
     self.assertEqual(get_searchable_fields(IBaz), [])
 def test_no_longer_searchable_removes_flag(self):
     self.assertEqual(get_searchable_fields(IBaz), [])
     searchable(IBaz, u'baz')
     self.assertEqual(get_searchable_fields(IBaz), ['baz'])
     self.assertTrue(no_longer_searchable(IBaz, 'baz'))
     self.assertFalse(no_longer_searchable(IBaz, 'baz'))
     self.assertEqual(get_searchable_fields(IBaz), [])
    def test_no_longer_searchable_breaks_when_field_does_not_exist(self):
        with self.assertRaises(AttributeError) as cm:
            no_longer_searchable(IBar, u'foo')

        self.assertEqual(
            str(cm.exception),
            'collective.dexteritytextindexer.tests.test_utils.IBar'
            ' has no field "foo"')
    def test_no_longer_searchable_breaks_when_field_does_not_exist(self):
        with self.assertRaises(AttributeError) as cm:
            no_longer_searchable(IBar, u'foo')

        self.assertEqual(
            str(cm.exception),
            'collective.dexteritytextindexer.tests.test_utils.IBar'
            ' has no field "foo"')