@@ -41,19 +41,22 @@ def exact_results():
4141 }
4242 return results
4343
44- def assert_results (results , expected ):
44+ def assert_results_exact (results , expected ):
4545 """Helper function to assert clustering results."""
46- assert len (results . labels_ ) == len ( expected [ 'labels' ]), "Labels length mismatch"
46+ assert_results (results , expected )
4747 assert set (results .labels_ ) == set (expected ['labels' ]), "Labels do not match expected"
4848 assert results .centers_ == expected ['centers' ], "Centers do not match expected"
49- assert abs (results .mds_exec_time_ - expected ['time' ]) < 0.1 , "Execution time mismatch by more than 0.1 seconds"
50- assert abs (results .effective_radius_ - expected ['effective_radius' ]) < 0.01 , "Effective radius mismatch"
5149 assert np .sum (results .labels_ - expected ['labels' ]) == 0 , "Labels do not match expected"
5250
51+ def assert_results (results , expected ):
52+ assert len (results .labels_ ) == len (expected ['labels' ]), "Labels length mismatch"
53+ assert abs (results .mds_exec_time_ - expected ['time' ]) < 0.1 , "Execution time mismatch by more than 10%"
54+ assert abs (results .effective_radius_ - expected ['effective_radius' ])/ results .effective_radius_ < 0.1 , "Effective radius mismatch"
55+
5356def test_exact (iris_data , exact_results ):
5457 """Test the RadiusClustering with exact"""
5558 clustering = RadiusClustering (radius = 1.43 , manner = 'exact' ).fit (iris_data )
56- assert_results (clustering , exact_results )
59+ assert_results_exact (clustering , exact_results )
5760
5861def test_approx (iris_data , approx_results ):
5962 """Test the RadiusClustering with approx."""
0 commit comments