当前位置: 首页>>代码示例>>C++>>正文


C++ HistogramTester::expectBucketCount方法代码示例

本文整理汇总了C++中HistogramTester::expectBucketCount方法的典型用法代码示例。如果您正苦于以下问题:C++ HistogramTester::expectBucketCount方法的具体用法?C++ HistogramTester::expectBucketCount怎么用?C++ HistogramTester::expectBucketCount使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在HistogramTester的用法示例。


在下文中一共展示了HistogramTester::expectBucketCount方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: useCounter

TEST(UseCounterTest, SVGImageContext) {
  UseCounter useCounter(UseCounter::SVGImageContext);
  HistogramTester histogramTester;

  // Verify that SVGImage related feature counters get recorded in a separate
  // histogram.
  EXPECT_FALSE(
      useCounter.hasRecordedMeasurement(UseCounter::SVGSMILAdditiveAnimation));
  useCounter.recordMeasurement(UseCounter::SVGSMILAdditiveAnimation);
  EXPECT_TRUE(
      useCounter.hasRecordedMeasurement(UseCounter::SVGSMILAdditiveAnimation));
  histogramTester.expectUniqueSample(kSVGFeaturesHistogramName,
                                     UseCounter::SVGSMILAdditiveAnimation, 1);

  // And for the CSS counters
  EXPECT_FALSE(useCounter.isCounted(CSSPropertyFont));
  useCounter.count(HTMLStandardMode, CSSPropertyFont);
  EXPECT_TRUE(useCounter.isCounted(CSSPropertyFont));
  histogramTester.expectUniqueSample(
      kSVGCSSHistogramName,
      UseCounter::mapCSSPropertyIdToCSSSampleIdForHistogram(CSSPropertyFont),
      1);

  // After a page load, the histograms will be updated
  useCounter.didCommitLoad();
  histogramTester.expectBucketCount(kSVGFeaturesHistogramName,
                                    UseCounter::PageVisits, 1);
  histogramTester.expectTotalCount(kSVGFeaturesHistogramName, 2);
  histogramTester.expectBucketCount(kSVGCSSHistogramName, 1, 1);
  histogramTester.expectTotalCount(kSVGCSSHistogramName, 2);

  // And the legacy histogram will be updated to include these
  histogramTester.expectBucketCount(kLegacyFeaturesHistogramName,
                                    UseCounter::SVGSMILAdditiveAnimation, 1);
  histogramTester.expectBucketCount(kLegacyFeaturesHistogramName,
                                    UseCounter::PageVisits, 1);
  histogramTester.expectTotalCount(kLegacyFeaturesHistogramName, 2);
  histogramTester.expectBucketCount(
      kLegacyCSSHistogramName,
      UseCounter::mapCSSPropertyIdToCSSSampleIdForHistogram(CSSPropertyFont),
      1);
  histogramTester.expectBucketCount(kLegacyCSSHistogramName, 1, 1);
  histogramTester.expectTotalCount(kLegacyCSSHistogramName, 2);

  // None of this should update the non-legacy non-SVG histograms
  histogramTester.expectTotalCount(kCSSHistogramName, 0);
  histogramTester.expectTotalCount(kFeaturesHistogramName, 0);
}
开发者ID:mirror,项目名称:chromium,代码行数:48,代码来源:UseCounterTest.cpp

示例2:

TEST(UseCounterTest, RecordingCSSProperties) {
  UseCounter useCounter;
  HistogramTester histogramTester;

  // Test recording a single (arbitrary) property
  EXPECT_FALSE(useCounter.isCounted(CSSPropertyFont));
  useCounter.count(HTMLStandardMode, CSSPropertyFont);
  EXPECT_TRUE(useCounter.isCounted(CSSPropertyFont));
  histogramTester.expectUniqueSample(
      kCSSHistogramName,
      UseCounter::mapCSSPropertyIdToCSSSampleIdForHistogram(CSSPropertyFont),
      1);
  histogramTester.expectTotalCount(kLegacyCSSHistogramName, 0);

  // Test that repeated measurements have no effect
  useCounter.count(HTMLStandardMode, CSSPropertyFont);
  histogramTester.expectUniqueSample(
      kCSSHistogramName,
      UseCounter::mapCSSPropertyIdToCSSSampleIdForHistogram(CSSPropertyFont),
      1);
  histogramTester.expectTotalCount(kLegacyCSSHistogramName, 0);

  // Test recording a different sample
  EXPECT_FALSE(useCounter.isCounted(CSSPropertyZoom));
  useCounter.count(HTMLStandardMode, CSSPropertyZoom);
  EXPECT_TRUE(useCounter.isCounted(CSSPropertyZoom));
  histogramTester.expectBucketCount(
      kCSSHistogramName,
      UseCounter::mapCSSPropertyIdToCSSSampleIdForHistogram(CSSPropertyFont),
      1);
  histogramTester.expectBucketCount(
      kCSSHistogramName,
      UseCounter::mapCSSPropertyIdToCSSSampleIdForHistogram(CSSPropertyZoom),
      1);
  histogramTester.expectTotalCount(kCSSHistogramName, 2);
  histogramTester.expectTotalCount(kLegacyCSSHistogramName, 0);

  // Test the impact of page load on the new histogram
  useCounter.didCommitLoad();
  histogramTester.expectBucketCount(
      kCSSHistogramName,
      UseCounter::mapCSSPropertyIdToCSSSampleIdForHistogram(CSSPropertyFont),
      1);
  histogramTester.expectBucketCount(
      kCSSHistogramName,
      UseCounter::mapCSSPropertyIdToCSSSampleIdForHistogram(CSSPropertyZoom),
      1);
  histogramTester.expectBucketCount(kCSSHistogramName, 1, 1);
  histogramTester.expectTotalCount(kCSSHistogramName, 3);

  // And verify the legacy histogram now looks the same
  histogramTester.expectBucketCount(
      kLegacyCSSHistogramName,
      UseCounter::mapCSSPropertyIdToCSSSampleIdForHistogram(CSSPropertyFont),
      1);
  histogramTester.expectBucketCount(
      kLegacyCSSHistogramName,
      UseCounter::mapCSSPropertyIdToCSSSampleIdForHistogram(CSSPropertyZoom),
      1);
  histogramTester.expectBucketCount(kLegacyCSSHistogramName, 1, 1);
  histogramTester.expectTotalCount(kLegacyCSSHistogramName, 3);

  // Now a repeat measurement should get recorded again, exactly once
  EXPECT_FALSE(useCounter.isCounted(CSSPropertyFont));
  useCounter.count(HTMLStandardMode, CSSPropertyFont);
  useCounter.count(HTMLStandardMode, CSSPropertyFont);
  EXPECT_TRUE(useCounter.isCounted(CSSPropertyFont));
  histogramTester.expectBucketCount(
      kCSSHistogramName,
      UseCounter::mapCSSPropertyIdToCSSSampleIdForHistogram(CSSPropertyFont),
      2);
  histogramTester.expectTotalCount(kCSSHistogramName, 4);

  // And on the next page load, the legacy histogram will again be updated
  useCounter.didCommitLoad();
  histogramTester.expectBucketCount(
      kLegacyCSSHistogramName,
      UseCounter::mapCSSPropertyIdToCSSSampleIdForHistogram(CSSPropertyFont),
      2);
  histogramTester.expectBucketCount(
      kLegacyCSSHistogramName,
      UseCounter::mapCSSPropertyIdToCSSSampleIdForHistogram(CSSPropertyZoom),
      1);
  histogramTester.expectBucketCount(kLegacyCSSHistogramName, 1, 2);
  histogramTester.expectTotalCount(kLegacyCSSHistogramName, 5);

  // None of this should update any of the SVG histograms
  histogramTester.expectTotalCount(kSVGFeaturesHistogramName, 0);
  histogramTester.expectTotalCount(kSVGCSSHistogramName, 0);
}
开发者ID:mirror,项目名称:chromium,代码行数:90,代码来源:UseCounterTest.cpp


注:本文中的HistogramTester::expectBucketCount方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。