diff options
| -rw-r--r-- | app/src/test/java/se/leap/bitmaskclient/ConfigHelperTest.java | 57 | 
1 files changed, 57 insertions, 0 deletions
diff --git a/app/src/test/java/se/leap/bitmaskclient/ConfigHelperTest.java b/app/src/test/java/se/leap/bitmaskclient/ConfigHelperTest.java new file mode 100644 index 00000000..a9a5733d --- /dev/null +++ b/app/src/test/java/se/leap/bitmaskclient/ConfigHelperTest.java @@ -0,0 +1,57 @@ +package se.leap.bitmaskclient; + +import android.content.SharedPreferences; + +import org.junit.Before; +import org.junit.Test; + +import se.leap.bitmaskclient.testutils.MockSharedPreferences; +import se.leap.bitmaskclient.testutils.TestSetupHelper; + +import static org.junit.Assert.*; +import static se.leap.bitmaskclient.Constants.PROVIDER_CONFIGURED; +import static se.leap.bitmaskclient.testutils.TestSetupHelper.getInputAsString; + +/** + * Created by cyberta on 17.01.18. + */ +public class ConfigHelperTest { + +    private SharedPreferences mockPreferences; + + +    @Before +    public void setup() { +        mockPreferences = new MockSharedPreferences(); +    } + +    @Test +    public void providerInSharedPreferences_notInPreferences_returnsFalse() throws Exception { +        assertFalse(ConfigHelper.providerInSharedPreferences(mockPreferences)); +    } + +    @Test +    public void providerInSharedPreferences_inPreferences_returnsTrue() throws Exception { +        mockPreferences.edit().putBoolean(PROVIDER_CONFIGURED, true).apply(); +        assertTrue(ConfigHelper.providerInSharedPreferences(mockPreferences)); +    } + +    @Test +    public void getSavedProviderFromSharedPreferences_notInPreferences_returnsDefaultProvider() throws Exception { +        Provider provider = ConfigHelper.getSavedProviderFromSharedPreferences(mockPreferences); +        assertFalse(provider.isConfigured()); +    } + +    @Test +    public void getSavedProviderFromSharedPreferences_notInPreferences_returnsConfiguredProvider() throws Exception { +        mockPreferences.edit() +                .putString(Provider.KEY, getInputAsString(getClass().getClassLoader().getResourceAsStream("riseup.net.json"))) +                .putString(Provider.MAIN_URL, "https://riseup.net") +                .putString(Provider.CA_CERT, getInputAsString(getClass().getClassLoader().getResourceAsStream("riseup.net.pem"))) +                .apply(); +        Provider provider = ConfigHelper.getSavedProviderFromSharedPreferences(mockPreferences); +        assertTrue(provider.isConfigured()); +    } + + +}
\ No newline at end of file  | 
