def test_search_case_insensitive_german(self): results = list(replacer.search('deutscher')) self.assertEqual(len(results), 1) self.assertEqual(len(results[0][1]), 1) matched_instances = [m.instance for m in results[0][1]] self.assertFalse(self.data.en_title_instance in matched_instances) self.assertTrue(self.data.de_title_instance in matched_instances)
def test_search_case_sensitive_title(self): results = list(replacer.search('Title', case_sensitive=True)) self.assertEqual(len(results), 1) # expected results: # - English redirect field self.assertEqual(len(results[0][1]), 1) matched_instances = [m.instance for m in results[0][1]] self.assertTrue(self.data.en_title_instance in matched_instances) self.assertFalse(self.data.de_title_instance in matched_instances)
def test_implicit_discover(self): """ Tests implicit discovery when a 'requires_load' decorated method is called. """ _reset(replacer) # reset against globally INSTALLED_APPS with SettingsOverride(INSTALLED_APPS=['minitrue.testdata']): _reset(replacer) # reset against overwritten INSTALLED_APPS self.assertFalse(replacer._discovered) self.assertEqual(len(replacer.models), 0) results = list(replacer.search('test')) self.assertTrue(replacer._discovered) self.assertEqual(len(replacer.models), 1) self.assertEqual(len(results), 1) self.assertEqual(len(results[0]), 2) info, match_iterator = results[0] self.assertEqual(info['object_name'], "Title") self.assertEqual(len(list(match_iterator)), 0) self.assertTrue(Title in replacer.models) self.assertEqual(replacer.models[Title].fields, ['title', 'redirect'])
def get_results(self): return replacer.search( self.cleaned_data['term'], self.cleaned_data['replacement'], self.cleaned_data['case_sensitive'], )