Beispiel #1
0
    def test_get(self):
        """Test getting statistics."""

        statistics = Statistics()
        snapshot_length = len(statistics.snapshot())
        self.assertEqual(
            snapshot_length, 0,
            "Error:  initial state has no time statistics. "
            "Actual number = %d" % snapshot_length)

        stats = statistics.get_op_statistic('EnumerateInstances')
        snapshot_length = len(statistics.snapshot())
        self.assertEqual(
            snapshot_length, 0, "Error: getting a new stats with a disabled "
            "statistics results in no time statistics. "
            "Actual number = %d" % snapshot_length)
        self.assertEqual(stats.container, statistics)
        self.assertEqual(stats.name, "disabled")
        self.assertEqual(stats.count, 0)
        self.assertEqual(stats.avg_time, 0)
        self.assertEqual(stats.min_time, float('inf'))
        self.assertEqual(stats.max_time, 0)

        self.assertEqual(stats.avg_request_len, 0)
        self.assertEqual(stats.min_request_len, float('inf'))
        self.assertEqual(stats.max_request_len, 0)

        statistics.enable()

        method_name = 'OpenEnumerateInstances'

        stats = statistics.get_op_statistic(method_name)
        snapshot_length = len(statistics.snapshot())
        self.assertEqual(
            snapshot_length, 1, "Error: getting a new stats with an enabled "
            "statistics results in one time statistics. "
            "Actual number = %d" % snapshot_length)

        self.assertEqual(stats.container, statistics)
        self.assertEqual(stats.name, method_name)
        self.assertEqual(stats.count, 0)
        self.assertEqual(stats.avg_time, 0)
        self.assertEqual(stats.min_time, float('inf'))
        self.assertEqual(stats.max_time, 0)

        statistics.get_op_statistic(method_name)
        snapshot_length = len(statistics.snapshot())
        self.assertEqual(
            snapshot_length, 1, "Error: getting an existing stats with an "
            "enabled statistics results in the same number of "
            "statistics. "
            "Actual number = %d" % snapshot_length)
Beispiel #2
0
    def test_measure_disabled(self):
        """Test measuring time with disabled statistics."""

        statistics = Statistics()

        duration = 0.2

        stats = statistics.get_op_statistic('GetClass')
        self.assertEqual(stats.name, 'disabled')

        stats.start_timer()
        time.sleep(duration)
        stats.stop_timer(100, 200)

        for _, stats in statistics.snapshot():
            self.assertEqual(stats.count, 0)
            self.assertEqual(stats.avg_time, 0)
            self.assertEqual(stats.min_time, float('inf'))
            self.assertEqual(stats.max_time, 0)
Beispiel #3
0
def test_Statistics_get_op_statistic(testcase, init_enable, method_name,
                                     exp_snapshot_len, exp_op_stats_attrs):
    # pylint: disable=unused-argument
    """
    Test function for Statistics.get_op_statistic()
    """

    statistics = Statistics(enable=init_enable)

    # The code to be tested
    op_stats = statistics.get_op_statistic(method_name)

    snapshot_length = len(statistics.snapshot())
    assert snapshot_length == exp_snapshot_len

    for attr_name in exp_op_stats_attrs:
        exp_attr_value = exp_op_stats_attrs[attr_name]
        attr_value = getattr(op_stats, attr_name)
        assert attr_value == exp_attr_value, \
            "Unexpected op_stats attribute '{}'".format(attr_name)
Beispiel #4
0
def test_Statistics_measure_disabled():
    """
    Test measuring time with disabled statistics.
    """

    statistics = Statistics()

    duration = 0.2

    stats = statistics.get_op_statistic('GetClass')
    assert stats.name == 'disabled'

    stats.start_timer()
    time.sleep(duration)
    stats.stop_timer(100, 200)

    for _, stats in statistics.snapshot():
        assert stats.count == 0
        assert stats.avg_time == 0
        assert stats.min_time == float('inf')
        assert stats.max_time == 0