| 32 | } |
| 33 | |
| 34 | TEST(Exercise3, LogicalOr) { |
| 35 | EXPECT_THAT(TruthTableTest("true || (1 / 0 > 2)"), IsOkAndHolds(true)); |
| 36 | EXPECT_THAT(TruthTableTest("false || (1 / 0 > 2)"), |
| 37 | StatusIs(absl::StatusCode::kInvalidArgument, "divide by zero")); |
| 38 | EXPECT_THAT(TruthTableTest("(1 / 0 > 2) || true"), IsOkAndHolds(true)); |
| 39 | EXPECT_THAT(TruthTableTest("(1 / 0 > 2) || false"), |
| 40 | StatusIs(absl::StatusCode::kInvalidArgument, "divide by zero")); |
| 41 | EXPECT_THAT(TruthTableTest("(1 / 0 > 2) || (1 / 0 > 2)"), |
| 42 | StatusIs(absl::StatusCode::kInvalidArgument, "divide by zero")); |
| 43 | EXPECT_THAT(TruthTableTest("true || true"), IsOkAndHolds(true)); |
| 44 | EXPECT_THAT(TruthTableTest("true || false"), IsOkAndHolds(true)); |
| 45 | EXPECT_THAT(TruthTableTest("false || true"), IsOkAndHolds(true)); |
| 46 | EXPECT_THAT(TruthTableTest("false || false"), IsOkAndHolds(false)); |
| 47 | } |
| 48 | |
| 49 | TEST(Exercise3, LogicalAnd) { |
| 50 | EXPECT_THAT(TruthTableTest("true && (1 / 0 > 2)"), |
nothing calls this directly
no test coverage detected