Add more tests for the PIPE operator.
--
MOS_MIGRATED_REVID=101364893
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/EvaluationTest.java b/src/test/java/com/google/devtools/build/lib/syntax/EvaluationTest.java
index 14988cb..6b107a1 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/EvaluationTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/EvaluationTest.java
@@ -298,6 +298,7 @@
.testStatement("-7 / 2", -4)
.testStatement("-7 / -2", 3)
.testStatement("2147483647 / 2", 1073741823)
+ .testIfErrorContains("unsupported operand type(s) for /: 'string' and 'int'", "'str' / 2")
.testIfExactError("integer division by zero", "5 / 0");
}
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/ParserTest.java b/src/test/java/com/google/devtools/build/lib/syntax/ParserTest.java
index a9f32c0..02bb0f1 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/ParserTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/ParserTest.java
@@ -129,6 +129,13 @@
}
@Test
+ public void testPrecedence5() throws Exception {
+ BinaryOperatorExpression e =
+ (BinaryOperatorExpression) parseExpression("2 * x | y + 1");
+ assertEquals(Operator.PIPE, e.getOperator());
+ }
+
+ @Test
public void testUnaryMinusExpr() throws Exception {
FuncallExpression e = (FuncallExpression) parseExpression("-5");
FuncallExpression e2 = (FuncallExpression) parseExpression("- 5");