| /* |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * |
| * https://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| * |
| */ |
| |
| package org.apache.tools.ant.taskdefs.optional.junit; |
| |
| import java.io.File; |
| import java.util.Vector; |
| |
| /** |
| * Baseclass for BatchTest and JUnitTest. |
| * |
| */ |
| public abstract class BaseTest { |
| // CheckStyle:VisibilityModifier OFF - bc |
| protected boolean haltOnError = false; |
| protected boolean haltOnFail = false; |
| protected boolean filtertrace = true; |
| protected boolean fork = false; |
| protected String ifProperty = null; |
| protected String unlessProperty = null; |
| protected Vector<FormatterElement> formatters = new Vector<>(); |
| /** destination directory */ |
| protected File destDir = null; |
| |
| protected String failureProperty; |
| protected String errorProperty; |
| // CheckStyle:VisibilityModifier ON |
| |
| private Object ifCond; |
| private Object unlessCond; |
| private boolean skipNonTests; |
| |
| /** |
| * Set the filtertrace attribute. |
| * @param value a <code>boolean</code> value. |
| */ |
| public void setFiltertrace(boolean value) { |
| filtertrace = value; |
| } |
| |
| /** |
| * Get the filtertrace attribute. |
| * @return the attribute. |
| */ |
| public boolean getFiltertrace() { |
| return filtertrace; |
| } |
| |
| /** |
| * Set the fork attribute. |
| * @param value a <code>boolean</code> value. |
| */ |
| public void setFork(boolean value) { |
| fork = value; |
| } |
| |
| /** |
| * Get the fork attribute. |
| * @return the attribute. |
| */ |
| public boolean getFork() { |
| return fork; |
| } |
| |
| /** |
| * Set the haltonerror attribute. |
| * @param value a <code>boolean</code> value. |
| */ |
| public void setHaltonerror(boolean value) { |
| haltOnError = value; |
| } |
| |
| /** |
| * Set the haltonfailure attribute. |
| * @param value a <code>boolean</code> value. |
| */ |
| public void setHaltonfailure(boolean value) { |
| haltOnFail = value; |
| } |
| |
| /** |
| * Get the haltonerror attribute. |
| * @return the attribute. |
| */ |
| public boolean getHaltonerror() { |
| return haltOnError; |
| } |
| |
| /** |
| * Get the haltonfailure attribute. |
| * @return the attribute. |
| */ |
| public boolean getHaltonfailure() { |
| return haltOnFail; |
| } |
| |
| /** |
| * Set the if attribute. |
| * If this expression evaluates to true or the name of a property |
| * which is present in project, the test will be run. |
| * @param ifCondition the expression to evaluate |
| * @since Ant 1.8.0 |
| */ |
| public void setIf(Object ifCondition) { |
| ifCond = ifCondition; |
| ifProperty = ifCondition != null ? String.valueOf(ifCondition) : null; |
| } |
| |
| /** |
| * Set the if attribute. |
| * If this expression evaluates to true or the name of a property |
| * which is present in project, the test will be run. |
| * @param propertyName the expression to evaluate |
| */ |
| public void setIf(String propertyName) { |
| setIf((Object) propertyName); |
| } |
| |
| /** |
| * The if expression |
| * @return Object |
| * @since Ant 1.8.0 |
| */ |
| public Object getIfCondition() { |
| return ifCond; |
| } |
| |
| /** |
| * Set the unless attribute. If this expression evaluates to |
| * false or the name of a property which is not present in |
| * project, the test will be run. |
| * @param unlessCondition the expression to evaluate |
| * @since Ant 1.8.0 |
| */ |
| public void setUnless(Object unlessCondition) { |
| unlessCond = unlessCondition; |
| unlessProperty = unlessCondition != null |
| ? String.valueOf(unlessCondition) : null; |
| } |
| |
| /** |
| * Set the unless attribute. If this expression evaluates to |
| * false or the name of a property which is not present in |
| * project, the test will be run. |
| * @param propertyName the expression to evaluate |
| */ |
| public void setUnless(String propertyName) { |
| setUnless((Object) propertyName); |
| } |
| |
| /** |
| * The unless expression |
| * @return Object |
| * @since Ant 1.8.0 |
| */ |
| public Object getUnlessCondition() { |
| return unlessCond; |
| } |
| |
| /** |
| * Allow a formatter nested element. |
| * @param elem a formatter nested element. |
| */ |
| public void addFormatter(FormatterElement elem) { |
| formatters.addElement(elem); |
| } |
| |
| /** |
| * Sets the destination directory. |
| * @param destDir the destination directory. |
| */ |
| public void setTodir(File destDir) { |
| this.destDir = destDir; |
| } |
| |
| /** |
| * Get the destination directory. |
| * @return the destination directory as an absolute path if it exists |
| * otherwise return <code>null</code> |
| */ |
| public String getTodir() { |
| if (destDir != null) { |
| return destDir.getAbsolutePath(); |
| } |
| return null; |
| } |
| |
| /** |
| * Get the failure property name. |
| * @return the name of the property to set on failure. |
| */ |
| public String getFailureProperty() { |
| return failureProperty; |
| } |
| |
| /** |
| * Set the name of the failure property. |
| * @param failureProperty the name of the property to set if |
| * the test fails. |
| */ |
| public void setFailureProperty(String failureProperty) { |
| this.failureProperty = failureProperty; |
| } |
| |
| /** |
| * Get the failure property name. |
| * @return the name of the property to set on failure. |
| */ |
| public String getErrorProperty() { |
| return errorProperty; |
| } |
| |
| /** |
| * Set the name of the error property. |
| * @param errorProperty the name of the property to set if |
| * the test has an error. |
| */ |
| public void setErrorProperty(String errorProperty) { |
| this.errorProperty = errorProperty; |
| } |
| |
| public void setSkipNonTests(boolean skipNonTests) { |
| this.skipNonTests = skipNonTests; |
| } |
| |
| public boolean isSkipNonTests() { |
| return skipNonTests; |
| } |
| } |