Package org.jmock.internal
Class ReturnDefaultValueAction
- java.lang.Object
-
- org.jmock.internal.ReturnDefaultValueAction
-
public class ReturnDefaultValueAction extends java.lang.Object implements Action
Returns a default value for the invoked method's result type.- Returns nothing from void methods.
- Returns zero or false results for primitive types.
- Returns zero length instances for arrays and strings.
- Returns empty instances for collections and maps types in
java.util
. - Returns imposterised Null Objects for
types that can be imposterised by the action's
Imposteriser
. - Otherwise returns
null
.
- Author:
- Nat Pryce, Steve Freeman 2013
-
-
Constructor Summary
Constructors Constructor Description ReturnDefaultValueAction()
ReturnDefaultValueAction(Imposteriser imposteriser)
ReturnDefaultValueAction(Imposteriser imposteriser, java.util.Map<java.lang.Class<?>,java.lang.Object> typeToResultValue)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addResult(java.lang.Class<?> resultType, java.lang.Object resultValue)
protected static java.util.Map<java.lang.Class<?>,java.lang.Object>
createDefaultResults()
void
describeTo(org.hamcrest.Description description)
java.lang.Object
invoke(Invocation invocation)
Performs an action in response to an invocation.void
setImposteriser(Imposteriser newImposteriser)
-
-
-
Constructor Detail
-
ReturnDefaultValueAction
public ReturnDefaultValueAction(Imposteriser imposteriser, java.util.Map<java.lang.Class<?>,java.lang.Object> typeToResultValue)
-
ReturnDefaultValueAction
public ReturnDefaultValueAction(Imposteriser imposteriser)
-
ReturnDefaultValueAction
public ReturnDefaultValueAction()
-
-
Method Detail
-
setImposteriser
public void setImposteriser(Imposteriser newImposteriser)
-
describeTo
public void describeTo(org.hamcrest.Description description)
- Specified by:
describeTo
in interfaceorg.hamcrest.SelfDescribing
-
addResult
public void addResult(java.lang.Class<?> resultType, java.lang.Object resultValue)
-
invoke
public java.lang.Object invoke(Invocation invocation) throws java.lang.Throwable
Description copied from interface:Invokable
Performs an action in response to an invocation.- Specified by:
invoke
in interfaceInvokable
- Parameters:
invocation
- The invocation to perform.- Returns:
- The result of the invocation, if not throwing an exception.
Must return
null
if the invoked method has a void return type. - Throws:
java.lang.Throwable
- An exception to be thrown to the caller, if not returning a value. Any checked exception thrown must be in thethrows
list of the invoked method.
-
createDefaultResults
protected static java.util.Map<java.lang.Class<?>,java.lang.Object> createDefaultResults()
-
-