diff options
-rw-r--r-- | src/buildtool/build_engine/expression/evaluator.cpp | 2 | ||||
-rw-r--r-- | test/buildtool/build_engine/expression/expression.test.cpp | 14 |
2 files changed, 1 insertions, 15 deletions
diff --git a/src/buildtool/build_engine/expression/evaluator.cpp b/src/buildtool/build_engine/expression/evaluator.cpp index e573bf36..a768f43c 100644 --- a/src/buildtool/build_engine/expression/evaluator.cpp +++ b/src/buildtool/build_engine/expression/evaluator.cpp @@ -29,7 +29,7 @@ auto ValueIsTrue(ExpressionPtr const& val) -> bool { return *val != number_t{0}; } if (val->IsString()) { - return *val != ""s and *val != "0"s and *val != "NO"s; + return *val != ""s; } if (val->IsList()) { return not val->List().empty(); diff --git a/test/buildtool/build_engine/expression/expression.test.cpp b/test/buildtool/build_engine/expression/expression.test.cpp index 89ab6e5e..8db88412 100644 --- a/test/buildtool/build_engine/expression/expression.test.cpp +++ b/test/buildtool/build_engine/expression/expression.test.cpp @@ -418,20 +418,6 @@ TEST_CASE("Expression Evaluation", "[expression]") { // NOLINT REQUIRE(fail1); REQUIRE(fail1->IsString()); CHECK(fail1 == Expression::FromJson(R"("failure")"_json)); - - expr = Replace(expr, "cond", "0"s); - REQUIRE(expr); - auto fail2 = expr.Evaluate(env, fcts); - REQUIRE(fail2); - REQUIRE(fail2->IsString()); - CHECK(fail2 == Expression::FromJson(R"("failure")"_json)); - - expr = Replace(expr, "cond", "NO"s); - REQUIRE(expr); - auto fail3 = expr.Evaluate(env, fcts); - REQUIRE(fail3); - REQUIRE(fail3->IsString()); - CHECK(fail3 == Expression::FromJson(R"("failure")"_json)); } SECTION("List condition") { |