def testFlatMetricScores(self):
        """
    This calls estimateAnomalyLikelihoods with flat metric values. In this case
    we should use the null distribution, which gets reasonably high likelihood
    for everything.
    """
        # Generate samples with very flat metric values
        data1 = _generateSampleData(metricMean=42.0, metricVariance=1e-10)[0:1000]

        likelihoods, _, estimatorParams = an.estimateAnomalyLikelihoods(data1)

        # Check that we do indeed get reasonable likelihood values
        self.assertEqual(len(likelihoods), len(data1))
        self.assertTrue(likelihoods.sum() >= 0.4 * len(likelihoods))

        # Check that we do indeed get null distribution
        self.assertDictEqual(estimatorParams["distribution"], an.nullDistribution())
    def testFlatMetricScores(self):
        """
    This calls estimateAnomalyLikelihoods with flat metric values. In this case
    we should use the null distribution, which gets reasonably high likelihood
    for everything.
    """
        # Generate samples with very flat metric values
        data1 = _generateSampleData(metricMean=42.0,
                                    metricVariance=1e-10)[0:1000]

        likelihoods, _, estimatorParams = (
            an.estimateAnomalyLikelihoods(data1))

        # Check that we do indeed get reasonable likelihood values
        self.assertEqual(len(likelihoods), len(data1))
        self.assertTrue(likelihoods.sum() >= 0.4 * len(likelihoods))

        # Check that we do indeed get null distribution
        self.assertDictEqual(estimatorParams["distribution"],
                             an.nullDistribution())