ConditionalStackTraceFilterTest.java revision 2637d96c202372854a7c71466ddcc6e90fc4fc53
1/* 2 * Copyright (c) 2007 Mockito contributors 3 * This program is made available under the terms of the MIT License. 4 */ 5package org.mockito.internal.exceptions.stacktrace; 6 7import org.assertj.core.api.Assertions; 8import org.junit.Test; 9import org.mockito.exceptions.base.TraceBuilder; 10import org.mockito.internal.configuration.ConfigurationAccess; 11import org.mockitoutil.TestBase; 12 13import static org.mockitoutil.Conditions.onlyThoseClassesInStackTrace; 14 15public class ConditionalStackTraceFilterTest extends TestBase { 16 17 private ConditionalStackTraceFilter filter = new ConditionalStackTraceFilter(); 18 19 @Test 20 public void shouldNotFilterWhenConfigurationSaysNo() { 21 ConfigurationAccess.getConfig().overrideCleansStackTrace(false); 22 23 Throwable t = new TraceBuilder().classes( 24 "org.test.MockitoSampleTest", 25 "org.mockito.Mockito" 26 ).toThrowable(); 27 28 filter.filter(t); 29 30 Assertions.assertThat(t).has(onlyThoseClassesInStackTrace("org.mockito.Mockito", "org.test.MockitoSampleTest")); 31 } 32 33 @Test 34 public void shouldFilterWhenConfigurationSaysYes() { 35 ConfigurationAccess.getConfig().overrideCleansStackTrace(true); 36 37 Throwable t = new TraceBuilder().classes( 38 "org.test.MockitoSampleTest", 39 "org.mockito.Mockito" 40 ).toThrowable(); 41 42 filter.filter(t); 43 44 Assertions.assertThat(t).has(onlyThoseClassesInStackTrace("org.test.MockitoSampleTest")); 45 } 46} 47