Esempio n. 1
0
def ClusterAndCompare(sequence, partition_point):
  """Returns the comparison result and the clusters at the partition point."""
  # Detect a difference between the two clusters
  cluster_a, cluster_b = Cluster(sequence, partition_point)
  if len(cluster_a) > 2 and len(cluster_b) > 2:
    magnitude = float(math_utils.Iqr(cluster_a) + math_utils.Iqr(cluster_b)) / 2
  else:
    magnitude = 1
  return (pinpoint_compare.Compare(cluster_a, cluster_b,
                                   (len(cluster_a) + len(cluster_b)) // 2,
                                   'performance',
                                   magnitude), cluster_a, cluster_b)
Esempio n. 2
0
 def testNoValuesB(self):
     comparison = compare.Compare(range(10), [], 10, 'performance', 1)
     self.assertEqual(comparison.result, compare.UNKNOWN)
     self.assertIsNone(comparison.p_value)
Esempio n. 3
0
 def testNoValuesA(self):
     comparison = compare.Compare([], [0] * 10, 10, 'functional', 1)
     self.assertEqual(comparison.result, compare.UNKNOWN)
     self.assertIsNone(comparison.p_value)
Esempio n. 4
0
 def testAttemptAcount(self):
   comparison = compare.Compare(range(10), range(10), 19, 'performance')
   self.assertEqual(comparison, compare.UNKNOWN)
Esempio n. 5
0
 def testUnknown(self):
     comparison = compare.Compare(range(10), range(3, 13), 10,
                                  'performance', 1)
     self.assertEqual(comparison.result, compare.UNKNOWN)
     self.assertLessEqual(comparison.p_value, comparison.high_threshold)
Esempio n. 6
0
 def testNoValuesA(self):
   comparison = compare.Compare([], [0] * 10, 1000, 'functional')
   self.assertEqual(comparison, compare.UNKNOWN)
Esempio n. 7
0
 def testAttemptAcount(self):
   comparison = compare.Compare([0] * 50, [0] * 50, 99, 'functional')
   self.assertEqual(comparison, compare.UNKNOWN)
Esempio n. 8
0
 def testSame(self):
     comparison = compare.Compare([0] * 10, [0] * 10, 10, 'functional', 0.5)
     self.assertEqual(comparison.result, compare.SAME)
     self.assertGreater(comparison.p_value, comparison.high_threshold)
Esempio n. 9
0
 def testSame(self):
   comparison = compare.Compare([0] * 50, [0] * 50, 100, 'functional')
   self.assertEqual(comparison, compare.SAME)
Esempio n. 10
0
 def testUnknown(self):
   comparison = compare.Compare([0] * 50, [0] * 49 + [1], 100, 'functional')
   self.assertEqual(comparison, compare.UNKNOWN)
Esempio n. 11
0
 def testDifferent(self):
   comparison = compare.Compare([0] * 10, [0] * 4 + [1] * 6, 20, 'functional')
   self.assertEqual(comparison, compare.DIFFERENT)
Esempio n. 12
0
 def testHighAttemptCount(self):
   comparison = compare.Compare([0] * 500, [0] * 500, 1000, 'functional')
   self.assertEqual(comparison, compare.SAME)
Esempio n. 13
0
 def testNoValuesB(self):
   comparison = compare.Compare(range(10), [], 10, 'performance')
   self.assertEqual(comparison, compare.UNKNOWN)
Esempio n. 14
0
 def testDifferent(self):
     comparison = compare.Compare([0] * 10, [1] * 10, 10, 'functional', 0.5)
     self.assertEqual(comparison.result, compare.DIFFERENT)
     self.assertLessEqual(comparison.p_value, comparison.low_threshold)
Esempio n. 15
0
 def testDifferent(self):
   comparison = compare.Compare(range(10), range(7, 17), 20, 'performance')
   self.assertEqual(comparison, compare.DIFFERENT)
Esempio n. 16
0
 def testUnknown(self):
     comparison = compare.Compare([0] * 10, [0] * 9 + [1], 10, 'functional',
                                  0.5)
     self.assertEqual(comparison.result, compare.UNKNOWN)
     self.assertLessEqual(comparison.p_value, comparison.high_threshold)
Esempio n. 17
0
 def testSame(self):
   comparison = compare.Compare(range(10), range(10), 20, 'performance')
   self.assertEqual(comparison, compare.SAME)
Esempio n. 18
0
 def testDifferent(self):
     comparison = compare.Compare(range(10), range(7, 17), 10,
                                  'performance', 1)
     self.assertEqual(comparison.result, compare.DIFFERENT)
     self.assertLessEqual(comparison.p_value, comparison.low_threshold)
Esempio n. 19
0
 def testUnknown(self):
   comparison = compare.Compare(range(10), range(5, 15), 20, 'performance')
   self.assertEqual(comparison, compare.UNKNOWN)
Esempio n. 20
0
 def testSame(self):
     comparison = compare.Compare(range(10), range(10), 10, 'performance',
                                  1)
     self.assertEqual(comparison.result, compare.SAME)
     self.assertGreater(comparison.p_value, comparison.high_threshold)
Esempio n. 21
0
 def testUnknown(self):
     comparison = compare.Compare(range(10), range(3, 13), 10,
                                  'performance', 1)
     self.assertEqual(comparison, compare.UNKNOWN)