1package com.xtremelabs.robolectric.shadows;
2
3import android.net.wifi.WifiConfiguration;
4import com.xtremelabs.robolectric.WithTestDefaultsRunner;
5import org.junit.Test;
6import org.junit.runner.RunWith;
7
8import static com.xtremelabs.robolectric.Robolectric.shadowOf;
9import static junit.framework.Assert.assertNotNull;
10import static org.hamcrest.CoreMatchers.equalTo;
11import static org.junit.Assert.assertThat;
12
13@RunWith(WithTestDefaultsRunner.class)
14public class WifiConfigurationTest {
15    @Test
16    public void shouldSetTheBitSetsAndWepKeyArrays() throws Exception {
17        WifiConfiguration wifiConfiguration = new WifiConfiguration();
18        assertNotNull(wifiConfiguration.allowedAuthAlgorithms);
19    }
20
21    @Test
22    public void shouldCopy() throws Exception {
23        WifiConfiguration wifiConfiguration = new WifiConfiguration();
24
25        wifiConfiguration.networkId = 1;
26        wifiConfiguration.SSID = "SSID";
27        wifiConfiguration.BSSID = "BSSID";
28        wifiConfiguration.preSharedKey = "preSharedKey";
29        wifiConfiguration.status = 666;
30        wifiConfiguration.wepTxKeyIndex = 777;
31        wifiConfiguration.priority = 2;
32        wifiConfiguration.hiddenSSID = true;
33        wifiConfiguration.allowedKeyManagement.set(1);
34        wifiConfiguration.allowedProtocols.set(2);
35        wifiConfiguration.allowedAuthAlgorithms.set(3);
36        wifiConfiguration.allowedPairwiseCiphers.set(4);
37        wifiConfiguration.allowedGroupCiphers.set(5);
38        wifiConfiguration.wepKeys[0] = "0";
39        wifiConfiguration.wepKeys[1] = "1";
40        wifiConfiguration.wepKeys[2] = "2";
41        wifiConfiguration.wepKeys[3] = "3";
42
43        WifiConfiguration copy = shadowOf(wifiConfiguration).copy();
44
45        assertThat(copy.networkId, equalTo(1));
46        assertThat(copy.SSID, equalTo("SSID"));
47        assertThat(copy.BSSID, equalTo("BSSID"));
48        assertThat(copy.preSharedKey, equalTo("preSharedKey"));
49        assertThat(copy.status, equalTo(666));
50        assertThat(copy.wepTxKeyIndex, equalTo(777));
51        assertThat(copy.priority, equalTo(2));
52        assertThat(copy.hiddenSSID, equalTo(true));
53        assertThat(copy.allowedKeyManagement.get(1), equalTo(true));
54        assertThat(copy.allowedProtocols.get(2), equalTo(true));
55        assertThat(copy.allowedAuthAlgorithms.get(3), equalTo(true));
56        assertThat(copy.allowedPairwiseCiphers.get(4), equalTo(true));
57        assertThat(copy.allowedGroupCiphers.get(5), equalTo(true));
58        assertThat(copy.wepKeys[0], equalTo("0"));
59        assertThat(copy.wepKeys[1], equalTo("1"));
60        assertThat(copy.wepKeys[2], equalTo("2"));
61        assertThat(copy.wepKeys[3], equalTo("3"));
62    }
63}
64