// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-//
-// Author: mheule@google.com (Markus Heule)
-//
#include "gtest/gtest-test-part.h"
TestPartResultTest()
: r1_(TestPartResult::kSuccess, "foo/bar.cc", 10, "Success!"),
r2_(TestPartResult::kNonFatalFailure, "foo/bar.cc", -1, "Failure!"),
- r3_(TestPartResult::kFatalFailure, NULL, -1, "Failure!") {}
+ r3_(TestPartResult::kFatalFailure, nullptr, -1, "Failure!"),
+ r4_(TestPartResult::kSkip, "foo/bar.cc", 2, "Skipped!") {}
- TestPartResult r1_, r2_, r3_;
+ TestPartResult r1_, r2_, r3_, r4_;
};
EXPECT_FALSE(success.failed());
EXPECT_FALSE(success.nonfatally_failed());
EXPECT_FALSE(success.fatally_failed());
+ EXPECT_FALSE(success.skipped());
const TestPartResult nonfatal_failure(TestPartResult::kNonFatalFailure,
"file.cc",
EXPECT_TRUE(nonfatal_failure.failed());
EXPECT_TRUE(nonfatal_failure.nonfatally_failed());
EXPECT_FALSE(nonfatal_failure.fatally_failed());
+ EXPECT_FALSE(nonfatal_failure.skipped());
const TestPartResult fatal_failure(TestPartResult::kFatalFailure,
"file.cc",
EXPECT_TRUE(fatal_failure.failed());
EXPECT_FALSE(fatal_failure.nonfatally_failed());
EXPECT_TRUE(fatal_failure.fatally_failed());
+ EXPECT_FALSE(fatal_failure.skipped());
+
+ const TestPartResult skip(TestPartResult::kSkip, "file.cc", 42, "message");
+ EXPECT_FALSE(skip.passed());
+ EXPECT_FALSE(skip.failed());
+ EXPECT_FALSE(skip.nonfatally_failed());
+ EXPECT_FALSE(skip.fatally_failed());
+ EXPECT_TRUE(skip.skipped());
}
// Tests TestPartResult::type().
EXPECT_EQ(TestPartResult::kSuccess, r1_.type());
EXPECT_EQ(TestPartResult::kNonFatalFailure, r2_.type());
EXPECT_EQ(TestPartResult::kFatalFailure, r3_.type());
+ EXPECT_EQ(TestPartResult::kSkip, r4_.type());
}
// Tests TestPartResult::file_name().
TEST_F(TestPartResultTest, file_name) {
EXPECT_STREQ("foo/bar.cc", r1_.file_name());
- EXPECT_STREQ(NULL, r3_.file_name());
+ EXPECT_STREQ(nullptr, r3_.file_name());
+ EXPECT_STREQ("foo/bar.cc", r4_.file_name());
}
// Tests TestPartResult::line_number().
TEST_F(TestPartResultTest, line_number) {
EXPECT_EQ(10, r1_.line_number());
EXPECT_EQ(-1, r2_.line_number());
+ EXPECT_EQ(2, r4_.line_number());
}
// Tests TestPartResult::message().
TEST_F(TestPartResultTest, message) {
EXPECT_STREQ("Success!", r1_.message());
+ EXPECT_STREQ("Skipped!", r4_.message());
}
// Tests TestPartResult::passed().
EXPECT_TRUE(r1_.passed());
EXPECT_FALSE(r2_.passed());
EXPECT_FALSE(r3_.passed());
+ EXPECT_FALSE(r4_.passed());
}
// Tests TestPartResult::failed().
EXPECT_FALSE(r1_.failed());
EXPECT_TRUE(r2_.failed());
EXPECT_TRUE(r3_.failed());
+ EXPECT_FALSE(r4_.failed());
+}
+
+// Tests TestPartResult::failed().
+TEST_F(TestPartResultTest, Skipped) {
+ EXPECT_FALSE(r1_.skipped());
+ EXPECT_FALSE(r2_.skipped());
+ EXPECT_FALSE(r3_.skipped());
+ EXPECT_TRUE(r4_.skipped());
}
// Tests TestPartResult::fatally_failed().
EXPECT_FALSE(r1_.fatally_failed());
EXPECT_FALSE(r2_.fatally_failed());
EXPECT_TRUE(r3_.fatally_failed());
+ EXPECT_FALSE(r4_.fatally_failed());
}
// Tests TestPartResult::nonfatally_failed().
EXPECT_FALSE(r1_.nonfatally_failed());
EXPECT_TRUE(r2_.nonfatally_failed());
EXPECT_FALSE(r3_.nonfatally_failed());
+ EXPECT_FALSE(r4_.nonfatally_failed());
}
// Tests the TestPartResultArray class.
EXPECT_DEATH_IF_SUPPORTED(results.GetTestPartResult(1), "");
}
-// TODO(mheule@google.com): Add a test for the class HasNewFatalFailureHelper.
-
} // namespace