/* * Copyright (c) 2007 Mockito contributors * This program is made available under the terms of the MIT License. */ package org.mockito.internal.util.reflection; import org.junit.Test; import java.lang.reflect.Field; import java.util.Observable; import static org.mockitoutil.VmArgAssumptions.assumeVmArgPresent; public class AccessibilityChangerTest { @SuppressWarnings("unused") private Observable whatever; @Test public void should_enable_and_safely_disable() throws Exception { AccessibilityChanger changer = new AccessibilityChanger(); changer.enableAccess(field("whatever")); changer.safelyDisableAccess(field("whatever")); } @Test(expected = java.lang.AssertionError.class) public void safelyDisableAccess_should_fail_when_enableAccess_not_called() throws Exception { assumeVmArgPresent("-ea"); new AccessibilityChanger().safelyDisableAccess(field("whatever")); } private Field field(String fieldName) throws NoSuchFieldException { return this.getClass().getDeclaredField(fieldName); } }