8 changed files with 63 additions and 60 deletions
@ -1,45 +1,45 @@ |
|||||||
package org.springframework.cloud.context.environment; |
package org.springframework.cloud.context.environment; |
||||||
|
|
||||||
|
|
||||||
import org.junit.Test; |
import org.junit.Test; |
||||||
import org.mockito.ArgumentCaptor; |
import org.mockito.ArgumentCaptor; |
||||||
import org.mockito.Mockito; |
|
||||||
import org.springframework.context.ApplicationEvent; |
import org.springframework.context.ApplicationEvent; |
||||||
import org.springframework.context.ApplicationEventPublisher; |
import org.springframework.context.ApplicationEventPublisher; |
||||||
import org.springframework.mock.env.MockEnvironment; |
import org.springframework.mock.env.MockEnvironment; |
||||||
|
|
||||||
import static org.assertj.core.api.Assertions.assertThat; |
import static org.assertj.core.api.Assertions.assertThat; |
||||||
import static org.mockito.Mockito.*; |
|
||||||
import static org.mockito.Mockito.mock; |
import static org.mockito.Mockito.mock; |
||||||
|
import static org.mockito.Mockito.reset; |
||||||
import static org.mockito.Mockito.times; |
import static org.mockito.Mockito.times; |
||||||
import static org.mockito.Mockito.verify; |
import static org.mockito.Mockito.verify; |
||||||
|
|
||||||
public class EnvironmentManagerTest { |
public class EnvironmentManagerTest { |
||||||
|
|
||||||
@Test |
@Test |
||||||
public void testCorrectEvents() { |
public void testCorrectEvents() { |
||||||
MockEnvironment environment = new MockEnvironment(); |
MockEnvironment environment = new MockEnvironment(); |
||||||
ApplicationEventPublisher publisher = mock(ApplicationEventPublisher.class); |
ApplicationEventPublisher publisher = mock(ApplicationEventPublisher.class); |
||||||
EnvironmentManager environmentManager = new EnvironmentManager(environment); |
EnvironmentManager environmentManager = new EnvironmentManager(environment); |
||||||
environmentManager.setApplicationEventPublisher(publisher); |
environmentManager.setApplicationEventPublisher(publisher); |
||||||
|
|
||||||
environmentManager.setProperty("foo", "bar"); |
environmentManager.setProperty("foo", "bar"); |
||||||
|
|
||||||
assertThat(environment.getProperty("foo")).isEqualTo("bar"); |
assertThat(environment.getProperty("foo")).isEqualTo("bar"); |
||||||
ArgumentCaptor<ApplicationEvent> eventCaptor = ArgumentCaptor.forClass(ApplicationEvent.class); |
ArgumentCaptor<ApplicationEvent> eventCaptor = ArgumentCaptor |
||||||
verify(publisher, times(1)).publishEvent(eventCaptor.capture()); |
.forClass(ApplicationEvent.class); |
||||||
assertThat(eventCaptor.getValue()).isInstanceOf(EnvironmentChangeEvent.class); |
verify(publisher, times(1)).publishEvent(eventCaptor.capture()); |
||||||
EnvironmentChangeEvent event = (EnvironmentChangeEvent) eventCaptor.getValue(); |
assertThat(eventCaptor.getValue()).isInstanceOf(EnvironmentChangeEvent.class); |
||||||
assertThat(event.getKeys()).containsExactly("foo"); |
EnvironmentChangeEvent event = (EnvironmentChangeEvent) eventCaptor.getValue(); |
||||||
|
assertThat(event.getKeys()).containsExactly("foo"); |
||||||
reset(publisher); |
|
||||||
|
reset(publisher); |
||||||
environmentManager.reset(); |
|
||||||
assertThat(environment.getProperty("foo")).isNull(); |
environmentManager.reset(); |
||||||
verify(publisher, times(1)).publishEvent(eventCaptor.capture()); |
assertThat(environment.getProperty("foo")).isNull(); |
||||||
assertThat(eventCaptor.getValue()).isInstanceOf(EnvironmentChangeEvent.class); |
verify(publisher, times(1)).publishEvent(eventCaptor.capture()); |
||||||
event = (EnvironmentChangeEvent) eventCaptor.getValue(); |
assertThat(eventCaptor.getValue()).isInstanceOf(EnvironmentChangeEvent.class); |
||||||
assertThat(event.getKeys()).containsExactly("foo"); |
event = (EnvironmentChangeEvent) eventCaptor.getValue(); |
||||||
} |
assertThat(event.getKeys()).containsExactly("foo"); |
||||||
|
} |
||||||
|
|
||||||
} |
} |
Loading…
Reference in new issue