Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(23)

Unified Diff: gpu/config/gpu_test_expectations_parser_unittest.cc

Issue 1068813002: Add MacOS X 10.10 Yosemite support to GPUTestBotConfig. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Restrict access to GPUTestExpectationsParserTest::bot_config_ member. Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « gpu/config/gpu_test_expectations_parser.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gpu/config/gpu_test_expectations_parser_unittest.cc
diff --git a/gpu/config/gpu_test_expectations_parser_unittest.cc b/gpu/config/gpu_test_expectations_parser_unittest.cc
index b6ca529d506f16686a4f0506a77c3b6683a4efb9..0639a776d8d6e45ae1e6fc12697230e76ab30de7 100644
--- a/gpu/config/gpu_test_expectations_parser_unittest.cc
+++ b/gpu/config/gpu_test_expectations_parser_unittest.cc
@@ -2,12 +2,58 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+#include "base/format_macros.h"
#include "base/logging.h"
+#include "base/strings/stringprintf.h"
#include "gpu/config/gpu_test_expectations_parser.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace gpu {
+struct TestOSEntry {
+ const char* name;
+ GPUTestConfig::OS os;
+};
+
+static const TestOSEntry kOsFamilyWin = { "WIN", GPUTestConfig::kOsWin };
+static const TestOSEntry kOsFamilyMac = { "MAC", GPUTestConfig::kOsMac };
+
+static const struct TestOsWithFamily {
+ TestOSEntry version;
+ TestOSEntry family;
+} kOSVersionsWithFamily[] = {
+ { { "XP", GPUTestConfig::kOsWinXP }, kOsFamilyWin },
+ { { "VISTA", GPUTestConfig::kOsWinVista }, kOsFamilyWin },
+ { { "WIN7", GPUTestConfig::kOsWin7 }, kOsFamilyWin },
+ { { "WIN8", GPUTestConfig::kOsWin8 }, kOsFamilyWin },
+ { { "LEOPARD", GPUTestConfig::kOsMacLeopard }, kOsFamilyMac },
+ { { "SNOWLEOPARD", GPUTestConfig::kOsMacSnowLeopard }, kOsFamilyMac },
+ { { "LION", GPUTestConfig::kOsMacLion }, kOsFamilyMac },
+ { { "MOUNTAINLION", GPUTestConfig::kOsMacMountainLion }, kOsFamilyMac },
+ { { "MAVERICKS", GPUTestConfig::kOsMacMavericks }, kOsFamilyMac },
+ { { "YOSEMITE", GPUTestConfig::kOsMacYosemite }, kOsFamilyMac },
+ { { "LINUX", GPUTestConfig::kOsLinux },
+ { "LINUX", GPUTestConfig::kOsLinux } },
+ { { "CHROMEOS", GPUTestConfig::kOsChromeOS },
+ { "CHROMEOS", GPUTestConfig::kOsChromeOS } },
+ { { "ANDROID", GPUTestConfig::kOsAndroid },
+ { "ANDROID", GPUTestConfig::kOsAndroid } }
+};
+
+TestOSEntry GetUnrelatedOS(const TestOSEntry& os) {
+ return (os.os & kOsFamilyWin.os) ? kOsFamilyMac : kOsFamilyWin;
+}
+
+// Prints test parameter details.
+std::ostream& operator << (std::ostream& out, const TestOsWithFamily& os) {
+ out << "{ os_name: \"" << os.version.name
+ << "\", os_flag: " << os.version.os
+ << ", os_family: \"" << os.family.name
+ << "\", os_family_flag: " << os.family.os
+ << " }";
+ return out;
+}
+
class GPUTestExpectationsParserTest : public testing::Test {
public:
GPUTestExpectationsParserTest() { }
@@ -29,10 +75,35 @@ class GPUTestExpectationsParserTest : public testing::Test {
void TearDown() override {}
+ void set_os(int32 os) {
+ bot_config_.set_os(os);
+ ASSERT_TRUE(bot_config_.IsValid());
+ }
+
private:
GPUTestBotConfig bot_config_;
};
+class GPUTestExpectationsParserParamTest
+ : public GPUTestExpectationsParserTest,
+ public testing::WithParamInterface<TestOsWithFamily> {
+ public:
+ GPUTestExpectationsParserParamTest() { }
+
+ ~GPUTestExpectationsParserParamTest() override {}
+
+ protected:
+ const GPUTestBotConfig& GetBotConfig() {
+ set_os(GetParam().version.os);
+ return bot_config();
+ }
+
+ private:
+ // Restrict access to bot_config() function.
+ // GetBotConfig() should be used instead.
+ using GPUTestExpectationsParserTest::bot_config;
+};
+
TEST_F(GPUTestExpectationsParserTest, CommentOnly) {
const std::string text =
" \n"
@@ -45,37 +116,40 @@ TEST_F(GPUTestExpectationsParserTest, CommentOnly) {
parser.GetTestExpectation("some_test", bot_config()));
}
-TEST_F(GPUTestExpectationsParserTest, ValidFullEntry) {
+TEST_P(GPUTestExpectationsParserParamTest, ValidFullEntry) {
const std::string text =
- "BUG12345 WIN7 RELEASE NVIDIA 0x0640 : MyTest = FAIL";
+ base::StringPrintf("BUG12345 %s RELEASE NVIDIA 0x0640 : MyTest = FAIL",
+ GetParam().version.name);
GPUTestExpectationsParser parser;
EXPECT_TRUE(parser.LoadTestExpectations(text));
EXPECT_EQ(0u, parser.GetErrorMessages().size());
EXPECT_EQ(GPUTestExpectationsParser::kGpuTestFail,
- parser.GetTestExpectation("MyTest", bot_config()));
+ parser.GetTestExpectation("MyTest", GetBotConfig()));
}
-TEST_F(GPUTestExpectationsParserTest, ValidPartialEntry) {
+TEST_P(GPUTestExpectationsParserParamTest, ValidPartialEntry) {
const std::string text =
- "BUG12345 WIN NVIDIA : MyTest = TIMEOUT";
+ base::StringPrintf("BUG12345 %s NVIDIA : MyTest = TIMEOUT",
+ GetParam().family.name);
GPUTestExpectationsParser parser;
EXPECT_TRUE(parser.LoadTestExpectations(text));
EXPECT_EQ(0u, parser.GetErrorMessages().size());
EXPECT_EQ(GPUTestExpectationsParser::kGpuTestTimeout,
- parser.GetTestExpectation("MyTest", bot_config()));
+ parser.GetTestExpectation("MyTest", GetBotConfig()));
}
-TEST_F(GPUTestExpectationsParserTest, ValidUnrelatedOsEntry) {
- const std::string text =
- "BUG12345 LEOPARD : MyTest = TIMEOUT";
+TEST_P(GPUTestExpectationsParserParamTest, ValidUnrelatedOsEntry) {
+ const std::string text = base::StringPrintf(
+ "BUG12345 %s : MyTest = TIMEOUT",
+ GetUnrelatedOS(GetParam().version).name);
GPUTestExpectationsParser parser;
EXPECT_TRUE(parser.LoadTestExpectations(text));
EXPECT_EQ(0u, parser.GetErrorMessages().size());
EXPECT_EQ(GPUTestExpectationsParser::kGpuTestPass,
- parser.GetTestExpectation("MyTest", bot_config()));
+ parser.GetTestExpectation("MyTest", GetBotConfig()));
}
TEST_F(GPUTestExpectationsParserTest, ValidUnrelatedTestEntry) {
@@ -107,9 +181,11 @@ TEST_F(GPUTestExpectationsParserTest, AllModifiers) {
parser.GetTestExpectation("MyTest", bot_config()));
}
-TEST_F(GPUTestExpectationsParserTest, DuplicateModifiers) {
- const std::string text =
- "BUG12345 WIN7 WIN7 RELEASE NVIDIA 0x0640 : MyTest = FAIL";
+TEST_P(GPUTestExpectationsParserParamTest, DuplicateModifiers) {
+ const std::string text = base::StringPrintf(
+ "BUG12345 %s %s RELEASE NVIDIA 0x0640 : MyTest = FAIL",
+ GetParam().version.name,
+ GetParam().version.name);
GPUTestExpectationsParser parser;
EXPECT_FALSE(parser.LoadTestExpectations(text));
@@ -160,9 +236,10 @@ TEST_F(GPUTestExpectationsParserTest, IllegalModifier) {
EXPECT_NE(0u, parser.GetErrorMessages().size());
}
-TEST_F(GPUTestExpectationsParserTest, OsConflicts) {
- const std::string text =
- "BUG12345 XP WIN : MyTest = FAIL";
+TEST_P(GPUTestExpectationsParserParamTest, OsConflicts) {
+ const std::string text = base::StringPrintf("BUG12345 %s %s : MyTest = FAIL",
+ GetParam().version.name,
+ GetParam().family.name);
GPUTestExpectationsParser parser;
EXPECT_FALSE(parser.LoadTestExpectations(text));
@@ -196,10 +273,12 @@ TEST_F(GPUTestExpectationsParserTest, MoreThanOneGpuDeviceID) {
EXPECT_NE(0u, parser.GetErrorMessages().size());
}
-TEST_F(GPUTestExpectationsParserTest, MultipleEntriesConflicts) {
- const std::string text =
- "BUG12345 WIN7 RELEASE NVIDIA 0x0640 : MyTest = FAIL\n"
- "BUG12345 WIN : MyTest = FAIL";
+TEST_P(GPUTestExpectationsParserParamTest, MultipleEntriesConflicts) {
+ const std::string text = base::StringPrintf(
+ "BUG12345 %s RELEASE NVIDIA 0x0640 : MyTest = FAIL\n"
+ "BUG12345 %s : MyTest = FAIL",
+ GetParam().version.name,
+ GetParam().family.name);
GPUTestExpectationsParser parser;
EXPECT_FALSE(parser.LoadTestExpectations(text));
@@ -241,5 +320,9 @@ TEST_F(GPUTestExpectationsParserTest, StarMatching) {
parser.GetTestExpectation("OtherTest", bot_config()));
}
+INSTANTIATE_TEST_CASE_P(GPUTestExpectationsParser,
+ GPUTestExpectationsParserParamTest,
+ ::testing::ValuesIn(kOSVersionsWithFamily));
+
} // namespace gpu
« no previous file with comments | « gpu/config/gpu_test_expectations_parser.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698