def test_hybrid_search_none_query_wrong_retrieval_or_ranking_fails(self):
        """
        Test that hybrid search with a None query and wrong retrieval or ranking method fails.
        """
        custom_vector = [0.655 for _ in range(16)]
        test_cases = [
            (RetrievalMethod.Disjunction, RankingMethod.RRF),
            (RetrievalMethod.Tensor, RankingMethod.Lexical),
            (RetrievalMethod.Lexical, RankingMethod.Tensor),
            (RetrievalMethod.Lexical, RankingMethod.Lexical)
        ]

        for index in [self.structured_index_with_no_model, self.unstructured_index_with_no_model]:
            with self.subTest(index=index.name):
                for retrieval_method, ranking_method in test_cases:
                    with self.subTest(retrieval=retrieval_method, ranking=ranking_method):
                        with self.assertRaises(InvalidArgumentError) as e:
                            tensor_search.search(
                                config=self.config,
                                index_name=index.name,
                                text=None,
                                search_method="HYBRID",
                                hybrid_parameters=HybridParameters(
                                    retrievalMethod=retrieval_method,
                                    rankingMethod=ranking_method,
                                    verbose=True
                                )
                            )
                        self.assertIn("unless retrieval_method and ranking_method are both 'tensor'", str(e.exception))

        Test that hybrid search with a None query and wrong retrieval or ranking method fails.
        
tests/integ_tests/tensor_search/integ_tests/test_hybrid_search.py