77try :
88 import sentence_transformers
99 import transformers
10+
1011 ML_DEPENDENCIES_AVAILABLE = True
1112except ImportError :
1213 ML_DEPENDENCIES_AVAILABLE = False
@@ -37,7 +38,10 @@ def mm_embedder():
3738 return MultiModalEmbeddings ()
3839
3940
40- @pytest .mark .skipif (not ML_DEPENDENCIES_AVAILABLE , reason = "ML dependencies (transformers, sentence-transformers) not available" )
41+ @pytest .mark .skipif (
42+ not ML_DEPENDENCIES_AVAILABLE ,
43+ reason = "ML dependencies (transformers, sentence-transformers) not available" ,
44+ )
4145def test_code_embedding_quality (mm_embedder ):
4246 code1 = "def add(a, b):\n return a + b"
4347 code2 = "def sum(x, y):\n return x + y"
@@ -48,7 +52,10 @@ def test_code_embedding_quality(mm_embedder):
4852 assert sim > 0.8 # Similar code should have high similarity
4953
5054
51- @pytest .mark .skipif (not ML_DEPENDENCIES_AVAILABLE , reason = "ML dependencies (transformers, sentence-transformers) not available" )
55+ @pytest .mark .skipif (
56+ not ML_DEPENDENCIES_AVAILABLE ,
57+ reason = "ML dependencies (transformers, sentence-transformers) not available" ,
58+ )
5259def test_text_embedding_quality (mm_embedder ):
5360 text1 = "Add two numbers"
5461 text2 = "Sum two values"
@@ -59,7 +66,10 @@ def test_text_embedding_quality(mm_embedder):
5966 assert sim > 0.6 # Lowered threshold for semantic similarity
6067
6168
62- @pytest .mark .skipif (not ML_DEPENDENCIES_AVAILABLE , reason = "ML dependencies (transformers, sentence-transformers) not available" )
69+ @pytest .mark .skipif (
70+ not ML_DEPENDENCIES_AVAILABLE ,
71+ reason = "ML dependencies (transformers, sentence-transformers) not available" ,
72+ )
6373def test_config_embedding (mm_embedder ):
6474 config1 = "setting1 = true\n setting2 = 42"
6575 config2 = "setting1: true\n setting2: 42"
@@ -70,7 +80,10 @@ def test_config_embedding(mm_embedder):
7080 assert sim > 0.7
7181
7282
73- @pytest .mark .skipif (not ML_DEPENDENCIES_AVAILABLE , reason = "ML dependencies (transformers, sentence-transformers) not available" )
83+ @pytest .mark .skipif (
84+ not ML_DEPENDENCIES_AVAILABLE ,
85+ reason = "ML dependencies (transformers, sentence-transformers) not available" ,
86+ )
7487def test_error_embedding (mm_embedder ):
7588 error1 = 'Traceback (most recent call last):\n File "main.py", line 1, in <module>\n ZeroDivisionError: division by zero'
7689 error2 = "ZeroDivisionError: division by zero"
@@ -81,7 +94,10 @@ def test_error_embedding(mm_embedder):
8194 assert sim > 0.8
8295
8396
84- @pytest .mark .skipif (not ML_DEPENDENCIES_AVAILABLE , reason = "ML dependencies (transformers, sentence-transformers) not available" )
97+ @pytest .mark .skipif (
98+ not ML_DEPENDENCIES_AVAILABLE ,
99+ reason = "ML dependencies (transformers, sentence-transformers) not available" ,
100+ )
85101def test_batch_processing (mm_embedder ):
86102 items = [
87103 {"type" : "text" , "content" : "Hello world" },
@@ -94,7 +110,10 @@ def test_batch_processing(mm_embedder):
94110 assert len (embs ) == 4
95111
96112
97- @pytest .mark .skipif (not ML_DEPENDENCIES_AVAILABLE , reason = "ML dependencies (transformers, sentence-transformers) not available" )
113+ @pytest .mark .skipif (
114+ not ML_DEPENDENCIES_AVAILABLE ,
115+ reason = "ML dependencies (transformers, sentence-transformers) not available" ,
116+ )
98117def test_multi_modal_combination (mm_embedder ):
99118 code = "def foo(): return 1"
100119 text = "Function that returns one"
@@ -116,7 +135,10 @@ def test_caching(mm_embedder):
116135 assert emb1 is emb2 or np .allclose (emb1 , emb2 )
117136
118137
119- @pytest .mark .skipif (not ML_DEPENDENCIES_AVAILABLE , reason = "ML dependencies (transformers, sentence-transformers) not available" )
138+ @pytest .mark .skipif (
139+ not ML_DEPENDENCIES_AVAILABLE ,
140+ reason = "ML dependencies (transformers, sentence-transformers) not available" ,
141+ )
120142def test_search_integration (mm_embedder ):
121143 chroma = DummyChromaDBConnector ()
122144 query = {"code" : "def foo(): pass" , "text" : "A function" }
0 commit comments