package com.codeaffine.extras.launch.internal.dialog; import static com.codeaffine.extras.launch.internal.dialog.DebugUIPreferences.PREF_TERMINATE_AND_RELAUNCH; import static org.assertj.core.api.Assertions.assertThat; import org.eclipse.jface.preference.IPreferenceStore; import org.eclipse.jface.preference.PreferenceStore; import org.junit.Before; import org.junit.Test; public class DebugUIPreferencesTest { private PreferenceStore preferenceStore; @Before public void setUp() { preferenceStore = new PreferenceStore(); } @Test(expected=NullPointerException.class) public void testConstructorWithNullArgument() { new DebugUIPreferences( null ); } @Test public void testGetPreferenceStore() { DebugUIPreferences debugUIPreferences = new DebugUIPreferences( preferenceStore ); IPreferenceStore returnedPreferenceStore = debugUIPreferences.getPreferenceStore(); assertThat( returnedPreferenceStore ).isEqualTo( preferenceStore ); } @Test public void testSetAndGetTerminateBeforeRelaunch() { DebugUIPreferences debugUIPreferences = new DebugUIPreferences( preferenceStore ); debugUIPreferences.setTerminateBeforeRelaunch( true ); boolean terminateBeforeRelaunch = debugUIPreferences.isTerminateBeforeRelaunch(); assertThat( terminateBeforeRelaunch ).isTrue(); } @Test public void testSetTerminateBeforeRelaunch() { DebugUIPreferences debugUIPreferences = new DebugUIPreferences( preferenceStore ); debugUIPreferences.setTerminateBeforeRelaunch( true ); assertThat( preferenceStore.getBoolean( PREF_TERMINATE_AND_RELAUNCH ) ).isTrue(); } }