xref: /aosp_15_r20/external/libchrome-gestures/src/tracer_unittest.cc (revision aed3e5085e770be5b69ce25295ecf6ddf906af95)
1*aed3e508SAndroid Build Coastguard Worker // Copyright 2012 The ChromiumOS Authors
2*aed3e508SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be
3*aed3e508SAndroid Build Coastguard Worker // found in the LICENSE file.
4*aed3e508SAndroid Build Coastguard Worker 
5*aed3e508SAndroid Build Coastguard Worker #include <string.h>
6*aed3e508SAndroid Build Coastguard Worker 
7*aed3e508SAndroid Build Coastguard Worker #include <gtest/gtest.h>
8*aed3e508SAndroid Build Coastguard Worker 
9*aed3e508SAndroid Build Coastguard Worker #include "include/tracer.h"
10*aed3e508SAndroid Build Coastguard Worker 
11*aed3e508SAndroid Build Coastguard Worker using std::string;
12*aed3e508SAndroid Build Coastguard Worker 
13*aed3e508SAndroid Build Coastguard Worker namespace gestures {
14*aed3e508SAndroid Build Coastguard Worker 
15*aed3e508SAndroid Build Coastguard Worker class TracerTest : public ::testing::Test {};
16*aed3e508SAndroid Build Coastguard Worker 
17*aed3e508SAndroid Build Coastguard Worker class TraceMarkerMock {
18*aed3e508SAndroid Build Coastguard Worker  public:
19*aed3e508SAndroid Build Coastguard Worker   static string msg_written;
StaticTraceWrite(const char * str)20*aed3e508SAndroid Build Coastguard Worker   static void StaticTraceWrite(const char* str) {
21*aed3e508SAndroid Build Coastguard Worker     msg_written = string(str);
22*aed3e508SAndroid Build Coastguard Worker   }
23*aed3e508SAndroid Build Coastguard Worker };
24*aed3e508SAndroid Build Coastguard Worker string TraceMarkerMock::msg_written = "";
25*aed3e508SAndroid Build Coastguard Worker 
TEST(TracerTest,TraceTest)26*aed3e508SAndroid Build Coastguard Worker TEST(TracerTest, TraceTest) {
27*aed3e508SAndroid Build Coastguard Worker   PropRegistry prop_reg;
28*aed3e508SAndroid Build Coastguard Worker   Tracer tracer(&prop_reg, TraceMarkerMock::StaticTraceWrite);
29*aed3e508SAndroid Build Coastguard Worker   tracer.Trace("TestMessage: ", "name");
30*aed3e508SAndroid Build Coastguard Worker   EXPECT_STREQ("", TraceMarkerMock::msg_written.c_str());
31*aed3e508SAndroid Build Coastguard Worker   tracer.tracing_enabled_.val_ = 1;
32*aed3e508SAndroid Build Coastguard Worker   tracer.Trace("TestMessage: ", "name");
33*aed3e508SAndroid Build Coastguard Worker   EXPECT_STREQ("TestMessage: name", TraceMarkerMock::msg_written.c_str());
34*aed3e508SAndroid Build Coastguard Worker   tracer.tracing_enabled_.val_ = 0;
35*aed3e508SAndroid Build Coastguard Worker   tracer.Trace("TestMessageNoUse: ", "name");
36*aed3e508SAndroid Build Coastguard Worker   EXPECT_STREQ("TestMessage: name", TraceMarkerMock::msg_written.c_str());
37*aed3e508SAndroid Build Coastguard Worker }
38*aed3e508SAndroid Build Coastguard Worker }  // namespace gestures
39