package org.glucosio.android.tools;
import android.content.SharedPreferences;
import android.preference.PreferenceManager;
import org.glucosio.android.RobolectricTest;
import org.junit.Before;
import org.junit.Test;
import org.robolectric.RuntimeEnvironment;
import static org.assertj.android.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThat;
public class PreferencesTest extends RobolectricTest {
private Preferences preferences;
@Before
public void setUp() throws Exception {
preferences = new Preferences(RuntimeEnvironment.application);
}
@Test
public void ShouldReturnFalseAsDefault_WhenAskedIfLocaleWasCleared() throws Exception {
assertThat(preferences.isLocaleCleaned()).isFalse();
}
@Test
public void ShouldReturnSavedValue_WhenLocaleIsClearedAsked() throws Exception {
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(RuntimeEnvironment.application);
sharedPreferences.edit().putBoolean(Preferences.LOCALE_CLEANED, true).apply();
assertThat(preferences.isLocaleCleaned()).isTrue();
}
@Test
public void ShouldSaveLocaleIsCleaned_WhenAsked() throws Exception {
preferences.saveLocaleCleaned();
SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(RuntimeEnvironment.application);
assertThat(sharedPreferences).contains(Preferences.LOCALE_CLEANED, true);
}
}