From cd1948648ceeee8ae97145b2d0817b9f4ed8ef57 Mon Sep 17 00:00:00 2001 From: Octavia Togami Date: Sun, 23 Feb 2020 20:38:25 -0500 Subject: [PATCH] Make testEvaluate more compact (cherry picked from commit b9ba337f38205c79ae70e689d2a6db60f90acc9d) --- .../internal/expression/ExpressionTest.java | 12 +---- .../expression/ExpressionTestCase.java | 48 +++++++++++++++++++ 2 files changed, 49 insertions(+), 11 deletions(-) create mode 100644 worldedit-core/src/test/java/com/sk89q/worldedit/internal/expression/ExpressionTestCase.java diff --git a/worldedit-core/src/test/java/com/sk89q/worldedit/internal/expression/ExpressionTest.java b/worldedit-core/src/test/java/com/sk89q/worldedit/internal/expression/ExpressionTest.java index 3d870a9fc..7bb616be8 100644 --- a/worldedit-core/src/test/java/com/sk89q/worldedit/internal/expression/ExpressionTest.java +++ b/worldedit-core/src/test/java/com/sk89q/worldedit/internal/expression/ExpressionTest.java @@ -55,17 +55,7 @@ class ExpressionTest extends BaseExpressionTest { testCase("0 || 5", 5), testCase("2 || 5", 2), testCase("2 && 5", 5), - testCase("5 && 0", 0), - // check ternaries - testCase("false ? 1 : 2", 2), - testCase("true ? 1 : 2", 1), - // - ternary binds inside - testCase("true ? true ? 1 : 2 : 3", 1), - testCase("true ? false ? 1 : 2 : 3", 2), - testCase("false ? true ? 1 : 2 : 3", 3), - testCase("false ? false ? 1 : 2 : 3", 3), - // check return - testCase("return 1; 0", 1) + testCase("5 && 0", 0) ); return testCases.stream() .map(testCase -> DynamicTest.dynamicTest( diff --git a/worldedit-core/src/test/java/com/sk89q/worldedit/internal/expression/ExpressionTestCase.java b/worldedit-core/src/test/java/com/sk89q/worldedit/internal/expression/ExpressionTestCase.java new file mode 100644 index 000000000..685896e0e --- /dev/null +++ b/worldedit-core/src/test/java/com/sk89q/worldedit/internal/expression/ExpressionTestCase.java @@ -0,0 +1,48 @@ +/* + * WorldEdit, a Minecraft world manipulation toolkit + * Copyright (C) sk89q + * Copyright (C) WorldEdit team and contributors + * + * This program is free software: you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as published by the + * Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License + * for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program. If not, see . + */ + +package com.sk89q.worldedit.internal.expression; + +public class ExpressionTestCase { + + public static ExpressionTestCase testCase(String expression, double result) { + return new ExpressionTestCase(expression, result); + } + + private final String expression; + private final double result; + + private ExpressionTestCase(String expression, double result) { + this.expression = expression; + this.result = result; + } + + public String getExpression() { + return expression; + } + + public double getResult() { + return result; + } + + @Override + public String toString() { + return expression + " -> " + result; + } +}