rendering_stats_unittest.cc 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. // Copyright 2014 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 <string>
  5. #include "base/time/time.h"
  6. #include "base/values.h"
  7. #include "cc/debug/rendering_stats.h"
  8. #include "testing/gtest/include/gtest/gtest.h"
  9. namespace cc {
  10. namespace {
  11. static std::string ToString(const RenderingStats::TimeDeltaList& list) {
  12. base::trace_event::TracedValueJSON value;
  13. list.AddToTracedValue("list_value", &value);
  14. return value.ToJSON();
  15. }
  16. TEST(RenderingStatsTest, TimeDeltaListEmpty) {
  17. RenderingStats::TimeDeltaList time_delta_list;
  18. EXPECT_EQ("{\"list_value\":[]}", ToString(time_delta_list));
  19. }
  20. TEST(RenderingStatsTest, TimeDeltaListNonEmpty) {
  21. RenderingStats::TimeDeltaList time_delta_list;
  22. time_delta_list.Append(base::Milliseconds(234));
  23. time_delta_list.Append(base::Milliseconds(827));
  24. EXPECT_EQ("{\"list_value\":[234.0,827.0]}", ToString(time_delta_list));
  25. }
  26. TEST(RenderingStatsTest, TimeDeltaListAdd) {
  27. RenderingStats::TimeDeltaList time_delta_list_a;
  28. time_delta_list_a.Append(base::Milliseconds(810));
  29. time_delta_list_a.Append(base::Milliseconds(32));
  30. RenderingStats::TimeDeltaList time_delta_list_b;
  31. time_delta_list_b.Append(base::Milliseconds(43));
  32. time_delta_list_b.Append(base::Milliseconds(938));
  33. time_delta_list_b.Append(base::Milliseconds(2));
  34. time_delta_list_a.Add(time_delta_list_b);
  35. EXPECT_EQ("{\"list_value\":[810.0,32.0,43.0,938.0,2.0]}",
  36. ToString(time_delta_list_a));
  37. }
  38. } // namespace
  39. } // namespace cc