예제 #1
0
파일: test_metrics.py 프로젝트: NKSG/cpp
 def test_mix(self):
     '''Mixed case: should be k/n when k users equally share, 0 others.'''
     cases = [[2, 2, 0], [3, 0, 0, 0], [1, 1, 1, 0]]
     for case in cases:
         lg.debug("considering case: %s" % case)
         nonzeros = len([i for i in case if i != 0])
         exp_fairness = nonzeros / float(len(case))
         self.assertAlmostEqual(exp_fairness, fairness(case))
예제 #2
0
파일: test_metrics.py 프로젝트: NKSG/cpp
 def test_worst(self):
     '''Worst case: one nonzero item and the rest zero.'''
     cases = [[1, 0, 0], [3, 0, 0, 0]]
     for case in cases:
         self.assertAlmostEqual(1 / float(len(case)), fairness(case))
예제 #3
0
파일: test_metrics.py 프로젝트: NKSG/cpp
 def test_best(self):
     '''Best case: equal items should have fairness of 1.'''
     cases = [[1, 1, 1], [3, 3, 3, 3]]
     for case in cases:
         self.assertEqual(1, fairness(case))