diff options
Diffstat (limited to 'chromium/gpu/command_buffer/common/debug_marker_manager_unittest.cc')
-rw-r--r-- | chromium/gpu/command_buffer/common/debug_marker_manager_unittest.cc | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/chromium/gpu/command_buffer/common/debug_marker_manager_unittest.cc b/chromium/gpu/command_buffer/common/debug_marker_manager_unittest.cc new file mode 100644 index 00000000000..fa1cfccac32 --- /dev/null +++ b/chromium/gpu/command_buffer/common/debug_marker_manager_unittest.cc @@ -0,0 +1,63 @@ +// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "gpu/command_buffer/common/debug_marker_manager.h" +#include "testing/gtest/include/gtest/gtest.h" +#include "ui/gl/gl_mock.h" + +namespace gpu { +namespace gles2 { + +class DebugMarkerManagerTest : public testing::Test { + protected: + virtual void SetUp() { + } + + virtual void TearDown() { + } + + DebugMarkerManager manager_; +}; + +TEST_F(DebugMarkerManagerTest, Basic) { + // Test we can get root + EXPECT_STREQ("", manager_.GetMarker().c_str()); + // Test it's safe to pop an empty stack. + manager_.PopGroup(); + // Test we can still get root. + EXPECT_STREQ("", manager_.GetMarker().c_str()); + // Test setting a marker. + manager_.SetMarker("mark1"); + EXPECT_STREQ(".mark1", manager_.GetMarker().c_str()); + manager_.SetMarker("mark2"); + EXPECT_STREQ(".mark2", manager_.GetMarker().c_str()); + // Test pushing a group. + manager_.PushGroup("abc"); + EXPECT_STREQ(".abc", manager_.GetMarker().c_str()); + // Test setting a marker on the group + manager_.SetMarker("mark3"); + EXPECT_STREQ(".abc.mark3", manager_.GetMarker().c_str()); + manager_.SetMarker("mark4"); + EXPECT_STREQ(".abc.mark4", manager_.GetMarker().c_str()); + // Test pushing a 2nd group. + manager_.PushGroup("def"); + EXPECT_STREQ(".abc.def", manager_.GetMarker().c_str()); + // Test setting a marker on the group + manager_.SetMarker("mark5"); + EXPECT_STREQ(".abc.def.mark5", manager_.GetMarker().c_str()); + manager_.SetMarker("mark6"); + EXPECT_STREQ(".abc.def.mark6", manager_.GetMarker().c_str()); + // Test poping 2nd group. + manager_.PopGroup(); + EXPECT_STREQ(".abc.mark4", manager_.GetMarker().c_str()); + manager_.PopGroup(); + EXPECT_STREQ(".mark2", manager_.GetMarker().c_str()); + manager_.PopGroup(); + EXPECT_STREQ(".mark2", manager_.GetMarker().c_str()); +} + +} // namespace gles2 +} // namespace gpu + + |