| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <string> | |
| 6 | |
| 7 #include "base/time/time.h" | 5 #include "base/time/time.h" |
| 8 #include "base/values.h" | 6 #include "base/values.h" |
| 9 #include "cc/debug/rendering_stats.h" | 7 #include "cc/debug/rendering_stats.h" |
| 10 #include "testing/gtest/include/gtest/gtest.h" | 8 #include "testing/gtest/include/gtest/gtest.h" |
| 11 | 9 |
| 12 namespace cc { | 10 namespace cc { |
| 13 namespace { | 11 namespace { |
| 14 | 12 |
| 15 static std::string ToString(const RenderingStats::TimeDeltaList& list) { | 13 void CompareDoubleValue(const base::ListValue& list_value, |
| 16 scoped_refptr<base::debug::TracedValue> value = | 14 int index, |
| 17 new base::debug::TracedValue(); | 15 double expected_value) { |
| 18 value->BeginArray("list_value"); | 16 double value; |
| 19 list.AddToTracedValue(value.get()); | 17 EXPECT_TRUE(list_value.GetDouble(index, &value)); |
| 20 value->EndArray(); | 18 EXPECT_EQ(expected_value, value); |
| 21 return value->ToString(); | |
| 22 } | 19 } |
| 23 | 20 |
| 24 TEST(RenderingStatsTest, TimeDeltaListEmpty) { | 21 TEST(RenderingStatsTest, TimeDeltaListEmpty) { |
| 25 RenderingStats::TimeDeltaList time_delta_list; | 22 RenderingStats::TimeDeltaList time_delta_list; |
| 26 EXPECT_EQ("{\"list_value\":[]}", ToString(time_delta_list)); | 23 scoped_ptr<base::ListValue> list_value = |
| 24 time_delta_list.AsListValueInMilliseconds(); |
| 25 EXPECT_TRUE(list_value->empty()); |
| 26 EXPECT_EQ(0ul, list_value->GetSize()); |
| 27 } | 27 } |
| 28 | 28 |
| 29 TEST(RenderingStatsTest, TimeDeltaListNonEmpty) { | 29 TEST(RenderingStatsTest, TimeDeltaListNonEmpty) { |
| 30 RenderingStats::TimeDeltaList time_delta_list; | 30 RenderingStats::TimeDeltaList time_delta_list; |
| 31 time_delta_list.Append(base::TimeDelta::FromMilliseconds(234)); | 31 time_delta_list.Append(base::TimeDelta::FromMilliseconds(234)); |
| 32 time_delta_list.Append(base::TimeDelta::FromMilliseconds(827)); | 32 time_delta_list.Append(base::TimeDelta::FromMilliseconds(827)); |
| 33 | 33 |
| 34 EXPECT_EQ("{\"list_value\":[234.0,827.0]}", ToString(time_delta_list)); | 34 scoped_ptr<base::ListValue> list_value = |
| 35 time_delta_list.AsListValueInMilliseconds(); |
| 36 EXPECT_FALSE(list_value->empty()); |
| 37 EXPECT_EQ(2ul, list_value->GetSize()); |
| 38 |
| 39 CompareDoubleValue(*list_value.get(), 0, 234); |
| 40 CompareDoubleValue(*list_value.get(), 1, 827); |
| 35 } | 41 } |
| 36 | 42 |
| 37 TEST(RenderingStatsTest, TimeDeltaListAdd) { | 43 TEST(RenderingStatsTest, TimeDeltaListAdd) { |
| 38 RenderingStats::TimeDeltaList time_delta_list_a; | 44 RenderingStats::TimeDeltaList time_delta_list_a; |
| 39 time_delta_list_a.Append(base::TimeDelta::FromMilliseconds(810)); | 45 time_delta_list_a.Append(base::TimeDelta::FromMilliseconds(810)); |
| 40 time_delta_list_a.Append(base::TimeDelta::FromMilliseconds(32)); | 46 time_delta_list_a.Append(base::TimeDelta::FromMilliseconds(32)); |
| 41 | 47 |
| 42 RenderingStats::TimeDeltaList time_delta_list_b; | 48 RenderingStats::TimeDeltaList time_delta_list_b; |
| 43 time_delta_list_b.Append(base::TimeDelta::FromMilliseconds(43)); | 49 time_delta_list_b.Append(base::TimeDelta::FromMilliseconds(43)); |
| 44 time_delta_list_b.Append(base::TimeDelta::FromMilliseconds(938)); | 50 time_delta_list_b.Append(base::TimeDelta::FromMilliseconds(938)); |
| 45 time_delta_list_b.Append(base::TimeDelta::FromMilliseconds(2)); | 51 time_delta_list_b.Append(base::TimeDelta::FromMilliseconds(2)); |
| 46 | 52 |
| 47 time_delta_list_a.Add(time_delta_list_b); | 53 time_delta_list_a.Add(time_delta_list_b); |
| 48 EXPECT_EQ("{\"list_value\":[810.0,32.0,43.0,938.0,2.0]}", | 54 scoped_ptr<base::ListValue> list_value = |
| 49 ToString(time_delta_list_a)); | 55 time_delta_list_a.AsListValueInMilliseconds(); |
| 56 EXPECT_FALSE(list_value->empty()); |
| 57 EXPECT_EQ(5ul, list_value->GetSize()); |
| 58 |
| 59 CompareDoubleValue(*list_value.get(), 0, 810); |
| 60 CompareDoubleValue(*list_value.get(), 1, 32); |
| 61 CompareDoubleValue(*list_value.get(), 2, 43); |
| 62 CompareDoubleValue(*list_value.get(), 3, 938); |
| 63 CompareDoubleValue(*list_value.get(), 4, 2); |
| 50 } | 64 } |
| 51 | 65 |
| 52 } // namespace | 66 } // namespace |
| 53 } // namespace cc | 67 } // namespace cc |
| OLD | NEW |