diff options
Diffstat (limited to 'gfx/angle/src/libANGLE/Program_unittest.cpp')
-rwxr-xr-x | gfx/angle/src/libANGLE/Program_unittest.cpp | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/gfx/angle/src/libANGLE/Program_unittest.cpp b/gfx/angle/src/libANGLE/Program_unittest.cpp new file mode 100755 index 000000000..6d99f0019 --- /dev/null +++ b/gfx/angle/src/libANGLE/Program_unittest.cpp @@ -0,0 +1,42 @@ +// +// Copyright 2015 The ANGLE Project Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +// +// Unit tests for Program and related classes. +// + +#include <gtest/gtest.h> + +#include "libANGLE/Program.h" + +using namespace gl; + +namespace +{ + +// Tests that the log length properly counts the terminating \0. +TEST(InfoLogTest, LogLengthCountsTerminator) +{ + InfoLog infoLog; + EXPECT_EQ(0u, infoLog.getLength()); + infoLog << " "; + + // " \n\0" = 3 characters + EXPECT_EQ(3u, infoLog.getLength()); +} + +// Tests that newlines get appended to the info log properly. +TEST(InfoLogTest, AppendingNewline) +{ + InfoLog infoLog; + + infoLog << "First" << 1 << 'x'; + infoLog << "Second" << 2 << 'y'; + + std::string expected = "First1x\nSecond2y\n"; + + EXPECT_EQ(expected, infoLog.str()); +} + +} // namespace |