histogram_macros_unittest.cc 1.0 KB

1234567891011121314151617181920212223242526272829303132333435
  1. // Copyright 2019 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #include "ash/metrics/histogram_macros.h"
  5. #include "ash/test/ash_test_base.h"
  6. #include "ash/wm/tablet_mode/tablet_mode_controller_test_api.h"
  7. #include "base/test/metrics/histogram_tester.h"
  8. namespace ash {
  9. using HistogramMacrosTest = AshTestBase;
  10. TEST_F(HistogramMacrosTest, Basic) {
  11. base::HistogramTester histograms;
  12. const char* kTablet = "Test.Tablet";
  13. const char* kClamshell = "Test.Clamshell";
  14. UMA_HISTOGRAM_PERCENTAGE_IN_TABLET(kTablet, 1);
  15. UMA_HISTOGRAM_PERCENTAGE_IN_CLAMSHELL(kClamshell, 1);
  16. histograms.ExpectTotalCount(kClamshell, 1);
  17. histograms.ExpectTotalCount(kTablet, 0);
  18. TabletModeControllerTestApi().EnterTabletMode();
  19. UMA_HISTOGRAM_PERCENTAGE_IN_TABLET(kTablet, 1);
  20. UMA_HISTOGRAM_PERCENTAGE_IN_CLAMSHELL(kClamshell, 1);
  21. histograms.ExpectTotalCount(kClamshell, 1);
  22. histograms.ExpectTotalCount(kTablet, 1);
  23. }
  24. } // namespace ash