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

Unified Diff: base/test/expectations/parser_unittest.cc

Issue 1647803004: Move base to DEPS (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 4 years, 11 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 | « base/test/expectations/parser.cc ('k') | base/test/gtest_util.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: base/test/expectations/parser_unittest.cc
diff --git a/base/test/expectations/parser_unittest.cc b/base/test/expectations/parser_unittest.cc
deleted file mode 100644
index 074d63415935a002bcb20eea7ebe089b761aef78..0000000000000000000000000000000000000000
--- a/base/test/expectations/parser_unittest.cc
+++ /dev/null
@@ -1,209 +0,0 @@
-// Copyright (c) 2013 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 "base/test/expectations/parser.h"
-
-#include <string>
-#include <vector>
-
-#include "base/compiler_specific.h"
-#include "testing/gtest/include/gtest/gtest.h"
-
-using test_expectations::Parser;
-
-class TestExpectationParserTest : public testing::Test,
- public Parser::Delegate {
- public:
- void EmitExpectation(
- const test_expectations::Expectation& expectation) override {
- expectations_.push_back(expectation);
- }
-
- void OnSyntaxError(const std::string& message) override {
- syntax_error_ = message;
- }
-
- void OnDataError(const std::string& error) override {
- data_errors_.push_back(error);
- }
-
- protected:
- std::vector<test_expectations::Expectation> expectations_;
- std::string syntax_error_;
- std::vector<std::string> data_errors_;
-};
-
-TEST_F(TestExpectationParserTest, Basic) {
- Parser(this,
- "http://crbug.com/1234 [ Win-8 ] DouglasTest.PoopsOk = Timeout").
- Parse();
- EXPECT_TRUE(syntax_error_.empty());
- EXPECT_EQ(0u, data_errors_.size());
-
- ASSERT_EQ(1u, expectations_.size());
- EXPECT_EQ("DouglasTest.PoopsOk", expectations_[0].test_name);
- EXPECT_EQ(test_expectations::RESULT_TIMEOUT, expectations_[0].result);
- EXPECT_EQ(test_expectations::CONFIGURATION_UNSPECIFIED,
- expectations_[0].configuration);
-
- ASSERT_EQ(1u, expectations_[0].platforms.size());
- EXPECT_EQ("Win", expectations_[0].platforms[0].name);
- EXPECT_EQ("8", expectations_[0].platforms[0].variant);
-}
-
-TEST_F(TestExpectationParserTest, MultiModifier) {
- Parser(this, "BUG [ Win-XP Mac ] OhMy.MeOhMy = Failure").Parse();
- EXPECT_TRUE(syntax_error_.empty());
- EXPECT_EQ(0u, data_errors_.size());
-
- ASSERT_EQ(1u, expectations_.size());
- EXPECT_EQ("OhMy.MeOhMy", expectations_[0].test_name);
- EXPECT_EQ(test_expectations::RESULT_FAILURE,
- expectations_[0].result);
- EXPECT_EQ(test_expectations::CONFIGURATION_UNSPECIFIED,
- expectations_[0].configuration);
-
- ASSERT_EQ(2u, expectations_[0].platforms.size());
-
- EXPECT_EQ("Win", expectations_[0].platforms[0].name);
- EXPECT_EQ("XP", expectations_[0].platforms[0].variant);
-
- EXPECT_EQ("Mac", expectations_[0].platforms[1].name);
- EXPECT_EQ("", expectations_[0].platforms[1].variant);
-}
-
-TEST_F(TestExpectationParserTest, EmptyModifier) {
- Parser(this,
- "BUG [] First.Test = Failure\n"
- "BUG2 [ ] Second.Test = Crash").Parse();
- EXPECT_EQ(0u, data_errors_.size());
-
- ASSERT_EQ(2u, expectations_.size());
-
- EXPECT_EQ("First.Test", expectations_[0].test_name);
- EXPECT_EQ(test_expectations::RESULT_FAILURE,
- expectations_[0].result);
- EXPECT_EQ(test_expectations::CONFIGURATION_UNSPECIFIED,
- expectations_[0].configuration);
- EXPECT_EQ(0u, expectations_[0].platforms.size());
-
- EXPECT_EQ("Second.Test", expectations_[1].test_name);
- EXPECT_EQ(test_expectations::RESULT_CRASH,
- expectations_[1].result);
- EXPECT_EQ(test_expectations::CONFIGURATION_UNSPECIFIED,
- expectations_[1].configuration);
- EXPECT_EQ(0u, expectations_[1].platforms.size());
-}
-
-TEST_F(TestExpectationParserTest, MultiLine) {
- Parser(this,
- "BUG [ Linux ] Line.First = Failure\n"
- "\n"
- "# A test comment.\n"
- "BUG2 [ Release ] Line.Second = Skip").Parse();
- EXPECT_TRUE(syntax_error_.empty());
- EXPECT_EQ(0u, data_errors_.size());
-
- ASSERT_EQ(2u, expectations_.size());
- EXPECT_EQ("Line.First", expectations_[0].test_name);
- EXPECT_EQ(test_expectations::RESULT_FAILURE, expectations_[0].result);
- EXPECT_EQ(test_expectations::CONFIGURATION_UNSPECIFIED,
- expectations_[0].configuration);
-
- ASSERT_EQ(1u, expectations_[0].platforms.size());
- EXPECT_EQ("Linux", expectations_[0].platforms[0].name);
- EXPECT_EQ("", expectations_[0].platforms[0].variant);
-
- EXPECT_EQ("Line.Second", expectations_[1].test_name);
- EXPECT_EQ(test_expectations::RESULT_SKIP, expectations_[1].result);
- EXPECT_EQ(test_expectations::CONFIGURATION_RELEASE,
- expectations_[1].configuration);
- EXPECT_EQ(0u, expectations_[1].platforms.size());
-}
-
-TEST_F(TestExpectationParserTest, MultiLineWithComments) {
- Parser(this,
- " # Comment for your thoughts\n"
- " \t \n"
- "BUG [ Mac-10.8 Debug] Foo=Bar =Skip # Why not another comment?\n"
- "BUG2 [Win-XP\tWin-Vista ] Cow.GoesMoo =\tTimeout\n\n").Parse();
- EXPECT_TRUE(syntax_error_.empty()) << syntax_error_;
- EXPECT_EQ(0u, data_errors_.size());
-
- ASSERT_EQ(2u, expectations_.size());
- EXPECT_EQ("Foo=Bar", expectations_[0].test_name);
- EXPECT_EQ(test_expectations::RESULT_SKIP, expectations_[0].result);
- EXPECT_EQ(test_expectations::CONFIGURATION_DEBUG,
- expectations_[0].configuration);
-
- ASSERT_EQ(1u, expectations_[0].platforms.size());
- EXPECT_EQ("Mac", expectations_[0].platforms[0].name);
- EXPECT_EQ("10.8", expectations_[0].platforms[0].variant);
-
- EXPECT_EQ("Cow.GoesMoo", expectations_[1].test_name);
- EXPECT_EQ(test_expectations::RESULT_TIMEOUT, expectations_[1].result);
- EXPECT_EQ(test_expectations::CONFIGURATION_UNSPECIFIED,
- expectations_[1].configuration);
-
- ASSERT_EQ(2u, expectations_[1].platforms.size());
- EXPECT_EQ("Win", expectations_[1].platforms[0].name);
- EXPECT_EQ("XP", expectations_[1].platforms[0].variant);
- EXPECT_EQ("Win", expectations_[1].platforms[0].name);
- EXPECT_EQ("Vista", expectations_[1].platforms[1].variant);
-}
-
-TEST_F(TestExpectationParserTest, WeirdSpaces) {
- Parser(this, " BUG [Linux] Weird = Skip ").Parse();
- EXPECT_EQ(1u, expectations_.size());
- EXPECT_TRUE(syntax_error_.empty());
- EXPECT_EQ(0u, data_errors_.size());
-}
-
-TEST_F(TestExpectationParserTest, SyntaxErrors) {
- const char* const kErrors[] = {
- "Foo [ dfasd",
- "Foo [Linux] # This is an illegal comment",
- "Foo [Linux] Bar # Another illegal comment.",
- "Foo [Linux] Bar = # Another illegal comment.",
- "Foo[Linux]Bar=Failure",
- "Foo\n[Linux] Bar = Failure",
- "Foo [\nLinux] Bar = Failure",
- "Foo [Linux\n] Bar = Failure",
- "Foo [ Linux ] \n Bar = Failure",
- "Foo [ Linux ] Bar =\nFailure",
- "Foo [ Linux \n ] Bar =\nFailure",
- };
-
- for (size_t i = 0; i < arraysize(kErrors); ++i) {
- Parser(this, kErrors[i]).Parse();
- EXPECT_FALSE(syntax_error_.empty())
- << "Should have error for #" << i << ": " << kErrors[i];
- syntax_error_.clear();
- }
-}
-
-TEST_F(TestExpectationParserTest, DataErrors) {
- const char* const kOneError[] = {
- "http://crbug.com/1234 [MagicBrowzR] BadModifier = Timeout",
- "________ [Linux] BadResult = WhatNow",
- "http://wkb.ug/1234 [Debug Release Win-7] MultipleConfigs = Skip",
- };
-
- for (size_t i = 0; i < arraysize(kOneError); ++i) {
- Parser(this, kOneError[i]).Parse();
- EXPECT_EQ(1u, data_errors_.size()) << kOneError[i];
- data_errors_.clear();
- }
-
- const char* const kTwoErrors[] = {
- ". [Mac-TurningIntoiOS] BadModifierVariant.BadResult = Foobar",
- "1234 [ Debug Release OS/2 ] MultipleConfigs.BadModifier = Pass",
- };
-
- for (size_t i = 0; i < arraysize(kTwoErrors); ++i) {
- Parser(this, kTwoErrors[i]).Parse();
- EXPECT_EQ(2u, data_errors_.size()) << kTwoErrors[i];
- data_errors_.clear();
- }
-}
« no previous file with comments | « base/test/expectations/parser.cc ('k') | base/test/gtest_util.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698