public void TestSweetSpotTf() { SweetSpotSimilarity ss = new SweetSpotSimilarity(); TFIDFSimilarity d = new DefaultSimilarity(); TFIDFSimilarity s = ss; // tf equal ss.SetBaselineTfFactors(0.0f, 0.0f); for (int i = 1; i < 1000; i++) { assertEquals("tf: i=" + i, d.Tf(i), s.Tf(i), 0.0f); } // tf higher ss.SetBaselineTfFactors(1.0f, 0.0f); for (int i = 1; i < 1000; i++) { assertTrue("tf: i=" + i + " : d=" + d.Tf(i) + " < s=" + s.Tf(i), d.Tf(i) < s.Tf(i)); } // tf flat ss.SetBaselineTfFactors(1.0f, 6.0f); for (int i = 1; i <= 6; i++) { assertEquals("tf flat1: i=" + i, 1.0f, s.Tf(i), 0.0f); } ss.SetBaselineTfFactors(2.0f, 6.0f); for (int i = 1; i <= 6; i++) { assertEquals("tf flat2: i=" + i, 2.0f, s.Tf(i), 0.0f); } for (int i = 6; i <= 1000; i++) { assertTrue("tf: i=" + i + " : s=" + s.Tf(i) + " < d=" + d.Tf(i), s.Tf(i) < d.Tf(i)); } // stupidity assertEquals("tf zero", 0.0f, s.Tf(0), 0.0f); }