All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.mockito.exceptions.base.MockitoException Maven / Gradle / Ivy

/*
 * Copyright (c) 2007 Mockito contributors
 * This program is made available under the terms of the MIT License.
 */

package org.mockito.exceptions.base;

import org.mockito.internal.exceptions.stacktrace.ConditionalStackTraceFilter;


/**
 * Raised by mockito to emit an error either due to Mockito, or due to the User.
 * All exception classes that inherit from this class will have the stack trace filtered.
 * Filtering removes Mockito internal stack trace elements to provide clean stack traces and improve productivity.
 * 

* The stack trace is filtered from mockito calls if you are using {@link #getStackTrace()}. * For debugging purpose though you can still access the full stacktrace using {@link #getUnfilteredStackTrace()}. * However note that other calls related to the stackTrace will refer to the filter stacktrace. *

* Advanced users and framework integrators can control stack trace filtering behavior * via {@link org.mockito.plugins.StackTraceCleanerProvider} classpath plugin. */ public class MockitoException extends RuntimeException { private static final long serialVersionUID = 1L; private StackTraceElement[] unfilteredStackTrace; // TODO lazy filtered stacktrace initialization public MockitoException(String message, Throwable t) { super(message, t); filterStackTrace(); } public MockitoException(String message) { super(message); filterStackTrace(); } private void filterStackTrace() { unfilteredStackTrace = getStackTrace(); ConditionalStackTraceFilter filter = new ConditionalStackTraceFilter(); filter.filter(this); } public StackTraceElement[] getUnfilteredStackTrace() { return unfilteredStackTrace; } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy