View Javadoc
1   /**
2    * Powerunit - A JDK1.8 test framework
3    * Copyright (C) 2014 Mathieu Boretti.
4    *
5    * This file is part of Powerunit
6    *
7    * Powerunit is free software: you can redistribute it and/or modify
8    * it under the terms of the GNU General Public License as published by
9    * the Free Software Foundation, either version 3 of the License, or
10   * (at your option) any later version.
11   *
12   * Powerunit is distributed in the hope that it will be useful,
13   * but WITHOUT ANY WARRANTY; without even the implied warranty of
14   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15   * GNU General Public License for more details.
16   *
17   * You should have received a copy of the GNU General Public License
18   * along with Powerunit. If not, see <http://www.gnu.org/licenses/>.
19   */
20  package ch.powerunit.function.lang;
21  
22  import java.util.function.Supplier;
23  
24  /**
25   * Specification of an argument for the test.
26   * 
27   * @author borettim
28   * @since 0.3.0
29   */
30  public interface FunctionTesterStartDSL<T, R> {
31  	/**
32  	 * Specify the input argument.
33  	 * 
34  	 * @param input
35  	 *            the argument to be passed.
36  	 * @return the {@link FunctionTesterDefineDSL the next step of the DSL}
37  	 */
38  	FunctionTesterDefineDSL<T, R> passingAsParameter(T input);
39  
40  	/**
41  	 * Specify the input argument.
42  	 * 
43  	 * @param input
44  	 *            a supplier to provide the argument to be passed.
45  	 * @return the {@link FunctionTesterDefineDSL the next step of the DSL}
46  	 */
47  	FunctionTesterDefineDSL<T, R> passingAsParameter(Supplier<T> input);
48  }