From 8769b7c6d6d62b961d62b9454bd12f69fba298c8 Mon Sep 17 00:00:00 2001 From: Markus Heiser Date: Wed, 5 Mar 2025 17:29:20 +0100 Subject: [refactor] typification of SearXNG (MainResult) / result items (part 2) The class ReslutContainer has been revised, it can now handle the typed Result items of classes: - MainResult - LegacyResult (a dict wrapper for backward compatibility) Due to the now complete typing of theses three clases, instead of the *getitem* accesses, the fields can now be accessed directly via attributes (which is also supported by the IDE). Signed-off-by: Markus Heiser --- tests/unit/test_results.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'tests/unit/test_results.py') diff --git a/tests/unit/test_results.py b/tests/unit/test_results.py index 6560f7b5c..45caf1d49 100644 --- a/tests/unit/test_results.py +++ b/tests/unit/test_results.py @@ -23,8 +23,11 @@ class ResultContainerTestCase(SearxTestCase): container.extend("google", [result]) container.close() - self.assertEqual(container.results_length(), 1) - self.assertIn(LegacyResult(result), container.get_ordered_results()) + self.assertEqual(len(container.get_ordered_results()), 1) + + res = LegacyResult(result) + res.normalize_result_fields() + self.assertIn(res, container.get_ordered_results()) def test_one_suggestion(self): result = dict(suggestion="lorem ipsum ..") @@ -33,7 +36,7 @@ class ResultContainerTestCase(SearxTestCase): container.extend("duckduckgo", [result]) container.close() - self.assertEqual(container.results_length(), 0) + self.assertEqual(len(container.get_ordered_results()), 0) self.assertEqual(len(container.suggestions), 1) self.assertIn(result["suggestion"], container.suggestions) @@ -42,6 +45,7 @@ class ResultContainerTestCase(SearxTestCase): result = LegacyResult( url="https://example.org", title="very long title, lorem ipsum", content="Lorem ipsum dolor sit amet .." ) + result.normalize_result_fields() eng1 = dict(url=result.url, title="short title", content=result.content, engine="google") eng2 = dict(url="http://example.org", title=result.title, content="lorem ipsum", engine="duckduckgo") @@ -50,7 +54,7 @@ class ResultContainerTestCase(SearxTestCase): container.close() result_list = container.get_ordered_results() - self.assertEqual(container.results_length(), 1) + self.assertEqual(len(container.get_ordered_results()), 1) self.assertIn(result, result_list) self.assertEqual(result_list[0].title, result.title) self.assertEqual(result_list[0].content, result.content) -- cgit v1.2.3