| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "base/debug/trace_event_unittest.h" | 5 #include "base/debug/trace_event_unittest.h" |
| 6 | 6 |
| 7 #include <math.h> | 7 #include <math.h> |
| 8 #include <cstdlib> | 8 #include <cstdlib> |
| 9 | 9 |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 880 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 891 EndTraceAndFlush(); | 891 EndTraceAndFlush(); |
| 892 | 892 |
| 893 ValidateAllTraceMacrosCreatedData(trace_parsed_); | 893 ValidateAllTraceMacrosCreatedData(trace_parsed_); |
| 894 } | 894 } |
| 895 | 895 |
| 896 class MockEnabledStateChangedObserver : | 896 class MockEnabledStateChangedObserver : |
| 897 public TraceLog::EnabledStateObserver { | 897 public TraceLog::EnabledStateObserver { |
| 898 public: | 898 public: |
| 899 MOCK_METHOD0(OnTraceLogEnabled, void()); | 899 MOCK_METHOD0(OnTraceLogEnabled, void()); |
| 900 MOCK_METHOD0(OnTraceLogDisabled, void()); | 900 MOCK_METHOD0(OnTraceLogDisabled, void()); |
| 901 MOCK_METHOD0(OnTraceLogDisabling, void()); |
| 901 }; | 902 }; |
| 902 | 903 |
| 903 TEST_F(TraceEventTestFixture, EnabledObserverFiresOnEnable) { | 904 TEST_F(TraceEventTestFixture, EnabledObserverFiresOnEnable) { |
| 904 MockEnabledStateChangedObserver observer; | 905 MockEnabledStateChangedObserver observer; |
| 905 TraceLog::GetInstance()->AddEnabledStateObserver(&observer); | 906 TraceLog::GetInstance()->AddEnabledStateObserver(&observer); |
| 906 | 907 |
| 907 EXPECT_CALL(observer, OnTraceLogEnabled()) | 908 EXPECT_CALL(observer, OnTraceLogEnabled()) |
| 908 .Times(1); | 909 .Times(1); |
| 909 TraceLog::GetInstance()->SetEnabled( | 910 TraceLog::GetInstance()->SetEnabled( |
| 910 CategoryFilter("*"), | 911 CategoryFilter("*"), |
| (...skipping 13 matching lines...) Expand all Loading... |
| 924 TraceLog::RECORDING_MODE, | 925 TraceLog::RECORDING_MODE, |
| 925 TraceOptions()); | 926 TraceOptions()); |
| 926 | 927 |
| 927 testing::StrictMock<MockEnabledStateChangedObserver> observer; | 928 testing::StrictMock<MockEnabledStateChangedObserver> observer; |
| 928 TraceLog::GetInstance()->AddEnabledStateObserver(&observer); | 929 TraceLog::GetInstance()->AddEnabledStateObserver(&observer); |
| 929 | 930 |
| 930 EXPECT_CALL(observer, OnTraceLogEnabled()) | 931 EXPECT_CALL(observer, OnTraceLogEnabled()) |
| 931 .Times(0); | 932 .Times(0); |
| 932 EXPECT_CALL(observer, OnTraceLogDisabled()) | 933 EXPECT_CALL(observer, OnTraceLogDisabled()) |
| 933 .Times(0); | 934 .Times(0); |
| 935 EXPECT_CALL(observer, OnTraceLogDisabling()) |
| 936 .Times(0); |
| 934 TraceLog::GetInstance()->SetEnabled( | 937 TraceLog::GetInstance()->SetEnabled( |
| 935 CategoryFilter("*"), | 938 CategoryFilter("*"), |
| 936 TraceLog::RECORDING_MODE, | 939 TraceLog::RECORDING_MODE, |
| 937 TraceOptions()); | 940 TraceOptions()); |
| 938 testing::Mock::VerifyAndClear(&observer); | 941 testing::Mock::VerifyAndClear(&observer); |
| 939 EXPECT_TRUE(TraceLog::GetInstance()->IsEnabled()); | 942 EXPECT_TRUE(TraceLog::GetInstance()->IsEnabled()); |
| 940 | 943 |
| 941 // Cleanup. | 944 // Cleanup. |
| 942 TraceLog::GetInstance()->RemoveEnabledStateObserver(&observer); | 945 TraceLog::GetInstance()->RemoveEnabledStateObserver(&observer); |
| 943 TraceLog::GetInstance()->SetDisabled(); | 946 TraceLog::GetInstance()->SetDisabled(); |
| (...skipping 11 matching lines...) Expand all Loading... |
| 955 TraceLog::RECORDING_MODE, | 958 TraceLog::RECORDING_MODE, |
| 956 TraceOptions()); | 959 TraceOptions()); |
| 957 | 960 |
| 958 testing::StrictMock<MockEnabledStateChangedObserver> observer; | 961 testing::StrictMock<MockEnabledStateChangedObserver> observer; |
| 959 TraceLog::GetInstance()->AddEnabledStateObserver(&observer); | 962 TraceLog::GetInstance()->AddEnabledStateObserver(&observer); |
| 960 | 963 |
| 961 EXPECT_CALL(observer, OnTraceLogEnabled()) | 964 EXPECT_CALL(observer, OnTraceLogEnabled()) |
| 962 .Times(0); | 965 .Times(0); |
| 963 EXPECT_CALL(observer, OnTraceLogDisabled()) | 966 EXPECT_CALL(observer, OnTraceLogDisabled()) |
| 964 .Times(1); | 967 .Times(1); |
| 968 EXPECT_CALL(observer, OnTraceLogDisabling()) |
| 969 .Times(1); |
| 965 TraceLog::GetInstance()->SetDisabled(); | 970 TraceLog::GetInstance()->SetDisabled(); |
| 966 testing::Mock::VerifyAndClear(&observer); | 971 testing::Mock::VerifyAndClear(&observer); |
| 967 | 972 |
| 968 // Cleanup. | 973 // Cleanup. |
| 969 TraceLog::GetInstance()->RemoveEnabledStateObserver(&observer); | 974 TraceLog::GetInstance()->RemoveEnabledStateObserver(&observer); |
| 970 TraceLog::GetInstance()->SetDisabled(); | 975 TraceLog::GetInstance()->SetDisabled(); |
| 971 } | 976 } |
| 972 | 977 |
| 973 TEST_F(TraceEventTestFixture, EnabledObserverFiresOnDisable) { | 978 TEST_F(TraceEventTestFixture, EnabledObserverFiresOnDisable) { |
| 974 TraceLog::GetInstance()->SetEnabled( | 979 TraceLog::GetInstance()->SetEnabled( |
| 975 CategoryFilter("*"), | 980 CategoryFilter("*"), |
| 976 TraceLog::RECORDING_MODE, | 981 TraceLog::RECORDING_MODE, |
| 977 TraceOptions()); | 982 TraceOptions()); |
| 978 | 983 |
| 979 MockEnabledStateChangedObserver observer; | 984 MockEnabledStateChangedObserver observer; |
| 980 TraceLog::GetInstance()->AddEnabledStateObserver(&observer); | 985 TraceLog::GetInstance()->AddEnabledStateObserver(&observer); |
| 981 | 986 |
| 982 EXPECT_CALL(observer, OnTraceLogDisabled()) | 987 EXPECT_CALL(observer, OnTraceLogDisabled()) |
| 983 .Times(1); | 988 .Times(1); |
| 989 EXPECT_CALL(observer, OnTraceLogDisabling()) |
| 990 .Times(1); |
| 984 TraceLog::GetInstance()->SetDisabled(); | 991 TraceLog::GetInstance()->SetDisabled(); |
| 985 testing::Mock::VerifyAndClear(&observer); | 992 testing::Mock::VerifyAndClear(&observer); |
| 986 | 993 |
| 987 // Cleanup. | 994 // Cleanup. |
| 988 TraceLog::GetInstance()->RemoveEnabledStateObserver(&observer); | 995 TraceLog::GetInstance()->RemoveEnabledStateObserver(&observer); |
| 989 } | 996 } |
| 990 | 997 |
| 991 // Tests the IsEnabled() state of TraceLog changes before callbacks. | 998 // Tests the IsEnabled() state of TraceLog changes before callbacks. |
| 992 class AfterStateChangeEnabledStateObserver | 999 class AfterStateChangeEnabledStateObserver |
| 993 : public TraceLog::EnabledStateObserver { | 1000 : public TraceLog::EnabledStateObserver { |
| 994 public: | 1001 public: |
| 995 AfterStateChangeEnabledStateObserver() {} | 1002 AfterStateChangeEnabledStateObserver() {} |
| 996 virtual ~AfterStateChangeEnabledStateObserver() {} | 1003 virtual ~AfterStateChangeEnabledStateObserver() {} |
| 997 | 1004 |
| 998 // TraceLog::EnabledStateObserver overrides: | 1005 // TraceLog::EnabledStateObserver overrides: |
| 999 virtual void OnTraceLogEnabled() OVERRIDE { | 1006 virtual void OnTraceLogEnabled() OVERRIDE { |
| 1000 EXPECT_TRUE(TraceLog::GetInstance()->IsEnabled()); | 1007 EXPECT_TRUE(TraceLog::GetInstance()->IsEnabled()); |
| 1001 } | 1008 } |
| 1002 | 1009 |
| 1003 virtual void OnTraceLogDisabled() OVERRIDE { | 1010 virtual void OnTraceLogDisabled() OVERRIDE { |
| 1004 EXPECT_FALSE(TraceLog::GetInstance()->IsEnabled()); | 1011 EXPECT_FALSE(TraceLog::GetInstance()->IsEnabled()); |
| 1005 } | 1012 } |
| 1013 |
| 1014 virtual void OnTraceLogDisabling() OVERRIDE { |
| 1015 EXPECT_TRUE(TraceLog::GetInstance()->IsEnabled()); |
| 1016 } |
| 1006 }; | 1017 }; |
| 1007 | 1018 |
| 1008 TEST_F(TraceEventTestFixture, ObserversFireAfterStateChange) { | 1019 TEST_F(TraceEventTestFixture, ObserversFireAfterStateChange) { |
| 1009 AfterStateChangeEnabledStateObserver observer; | 1020 AfterStateChangeEnabledStateObserver observer; |
| 1010 TraceLog::GetInstance()->AddEnabledStateObserver(&observer); | 1021 TraceLog::GetInstance()->AddEnabledStateObserver(&observer); |
| 1011 | 1022 |
| 1012 TraceLog::GetInstance()->SetEnabled( | 1023 TraceLog::GetInstance()->SetEnabled( |
| 1013 CategoryFilter("*"), | 1024 CategoryFilter("*"), |
| 1014 TraceLog::RECORDING_MODE, | 1025 TraceLog::RECORDING_MODE, |
| 1015 TraceOptions()); | 1026 TraceOptions()); |
| (...skipping 2056 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3072 EXPECT_EQ(original_option.enable_sampling, new_options.enable_sampling); | 3083 EXPECT_EQ(original_option.enable_sampling, new_options.enable_sampling); |
| 3073 EXPECT_EQ(original_option.enable_systrace, new_options.enable_systrace); | 3084 EXPECT_EQ(original_option.enable_systrace, new_options.enable_systrace); |
| 3074 } | 3085 } |
| 3075 } | 3086 } |
| 3076 } | 3087 } |
| 3077 } | 3088 } |
| 3078 | 3089 |
| 3079 | 3090 |
| 3080 } // namespace debug | 3091 } // namespace debug |
| 3081 } // namespace base | 3092 } // namespace base |
| OLD | NEW |