| Index: chrome/android/junit/src/org/chromium/chrome/browser/omnibox/geo/VisibleNetworksTest.java
|
| diff --git a/chrome/android/junit/src/org/chromium/chrome/browser/omnibox/geo/VisibleNetworksTest.java b/chrome/android/junit/src/org/chromium/chrome/browser/omnibox/geo/VisibleNetworksTest.java
|
| index 18d612d925ebd47ae635164c3abf2852f7c20928..6d208564ff977503b4692f9d79aa84d6a7620eec 100644
|
| --- a/chrome/android/junit/src/org/chromium/chrome/browser/omnibox/geo/VisibleNetworksTest.java
|
| +++ b/chrome/android/junit/src/org/chromium/chrome/browser/omnibox/geo/VisibleNetworksTest.java
|
| @@ -7,8 +7,13 @@ package org.chromium.chrome.browser.omnibox.geo;
|
| import static org.junit.Assert.assertEquals;
|
| import static org.junit.Assert.assertFalse;
|
| import static org.junit.Assert.assertNotEquals;
|
| +import static org.junit.Assert.assertNull;
|
| import static org.junit.Assert.assertTrue;
|
|
|
| +import android.util.Base64;
|
| +
|
| +import com.google.protobuf.nano.MessageNano;
|
| +
|
| import org.junit.Test;
|
| import org.junit.runner.RunWith;
|
| import org.robolectric.annotation.Config;
|
| @@ -50,8 +55,11 @@ public class VisibleNetworksTest {
|
| .setLocationAreaCode(11)
|
| .setMobileCountryCode(12)
|
| .setMobileNetworkCode(13);
|
| - private static final VisibleCell VISIBLE_CELL1 =
|
| - sVisibleCellCommunBuilder.setTimestamp(10L).build();
|
| + private static final VisibleCell VISIBLE_CELL1 = sVisibleCellCommunBuilder.setPhysicalCellId(14)
|
| + .setPrimaryScramblingCode(15)
|
| + .setTrackingAreaCode(16)
|
| + .setTimestamp(10L)
|
| + .build();
|
| private static final VisibleCell VISIBLE_CELL1_DIFFERENT_TIMESTAMP =
|
| sVisibleCellCommunBuilder.setTimestamp(20L).build();
|
| private static final VisibleCell VISIBLE_CELL2 = VisibleCell.builder(VisibleCell.GSM_RADIO_TYPE)
|
| @@ -61,6 +69,10 @@ public class VisibleNetworksTest {
|
| .setMobileNetworkCode(33)
|
| .setTimestamp(30L)
|
| .build();
|
| + private static final VisibleCell EMPTY_CELL =
|
| + VisibleCell.builder(VisibleCell.UNKNOWN_RADIO_TYPE).build();
|
| + private static final VisibleWifi EMPTY_WIFI = VisibleWifi.create(null, null, null, null);
|
| +
|
| private static Set<VisibleCell> sAllVisibleCells =
|
| new HashSet<VisibleCell>(Arrays.asList(VISIBLE_CELL1, VISIBLE_CELL2));
|
| private static Set<VisibleCell> sAllVisibleCells2 = new HashSet<VisibleCell>(
|
| @@ -74,6 +86,13 @@ public class VisibleNetworksTest {
|
| private static final VisibleNetworks VISIBLE_NETWORKS2 = VisibleNetworks.create(
|
| VISIBLE_WIFI2, VISIBLE_CELL2, sAllVisibleWifis, sAllVisibleCells2);
|
|
|
| + private static final String VISIBLE_CELL1_PROTO_ENCODED =
|
| + "CAEQDLoBFhIQCAEQChgLIAwoDTAPOA5AEBgBIAo=";
|
| + private static final String VISIBLE_WIFI1_PROTO_ENCODED =
|
| + "CAEQDLoBJAoeChExMToxMToxMToxMToxMToxMRD___________8BGAEgCg==";
|
| + private static final String EMPTY_CELL_PROTO_ENCODED = "CAEQDLoBBhICCAAYAQ==";
|
| + private static final String EMPTY_WIFI_PROTO_ENCODED = "CAEQDLoBBAoAGAE=";
|
| +
|
| @Test
|
| public void testVisibleWifiCreate() {
|
| VisibleWifi visibleWifi = VisibleWifi.create(SSID1, BSSID1, LEVEL1, TIMESTAMP1);
|
| @@ -119,6 +138,34 @@ public class VisibleNetworksTest {
|
| }
|
|
|
| @Test
|
| + public void testVisibleWifiToProto() {
|
| + boolean connected = true;
|
| + PartnerLocationDescriptor.VisibleNetwork visibleNetwork = VISIBLE_WIFI1.toProto(connected);
|
| + PartnerLocationDescriptor.VisibleNetwork.WiFi wifi = visibleNetwork.wifi;
|
| +
|
| + assertEquals(VISIBLE_WIFI1.bssid(), wifi.bssid);
|
| + assertEquals(VISIBLE_WIFI1.level(), wifi.levelDbm);
|
| + assertEquals(VISIBLE_WIFI1.timestampMs(), visibleNetwork.timestampMs);
|
| + assertEquals(connected, visibleNetwork.connected);
|
| +
|
| + assertEquals(VISIBLE_WIFI1_PROTO_ENCODED, encodeVisibleNetwork(visibleNetwork));
|
| + }
|
| +
|
| + @Test
|
| + public void testVisibleWifiToProtoEmptyWifi() {
|
| + boolean connected = true;
|
| + PartnerLocationDescriptor.VisibleNetwork visibleNetwork = EMPTY_WIFI.toProto(connected);
|
| + PartnerLocationDescriptor.VisibleNetwork.WiFi wifi = visibleNetwork.wifi;
|
| +
|
| + assertNull(wifi.bssid);
|
| + assertNull(wifi.levelDbm);
|
| + assertNull(visibleNetwork.timestampMs);
|
| + assertEquals(connected, visibleNetwork.connected);
|
| +
|
| + assertEquals(EMPTY_WIFI_PROTO_ENCODED, encodeVisibleNetwork(visibleNetwork));
|
| + }
|
| +
|
| + @Test
|
| public void testVisibleCellBuilder() {
|
| for (@RadioType int radioType : RADIO_TYPES) {
|
| VisibleCell visibleCell = VisibleCell.builder(radioType).build();
|
| @@ -134,6 +181,9 @@ public class VisibleNetworksTest {
|
| .setLocationAreaCode(VISIBLE_CELL1.locationAreaCode())
|
| .setMobileCountryCode(VISIBLE_CELL1.mobileCountryCode())
|
| .setMobileNetworkCode(VISIBLE_CELL1.mobileNetworkCode())
|
| + .setPhysicalCellId(VISIBLE_CELL1.physicalCellId())
|
| + .setPrimaryScramblingCode(VISIBLE_CELL1.primaryScramblingCode())
|
| + .setTrackingAreaCode(VISIBLE_CELL1.trackingAreaCode())
|
| .setTimestamp(VISIBLE_CELL1.timestampMs())
|
| .build();
|
| assertNotEquals(VISIBLE_CELL2, VISIBLE_CELL1);
|
| @@ -154,6 +204,9 @@ public class VisibleNetworksTest {
|
| .setLocationAreaCode(VISIBLE_CELL1.locationAreaCode())
|
| .setMobileCountryCode(VISIBLE_CELL1.mobileCountryCode())
|
| .setMobileNetworkCode(VISIBLE_CELL1.mobileNetworkCode())
|
| + .setPhysicalCellId(VISIBLE_CELL1.physicalCellId())
|
| + .setPrimaryScramblingCode(VISIBLE_CELL1.primaryScramblingCode())
|
| + .setTrackingAreaCode(VISIBLE_CELL1.trackingAreaCode())
|
| .setTimestamp(VISIBLE_CELL1.timestampMs())
|
| .build();
|
|
|
| @@ -168,6 +221,46 @@ public class VisibleNetworksTest {
|
| }
|
|
|
| @Test
|
| + public void testVisibleCellToProto() {
|
| + boolean connected = true;
|
| + PartnerLocationDescriptor.VisibleNetwork visibleNetwork = VISIBLE_CELL1.toProto(connected);
|
| + PartnerLocationDescriptor.VisibleNetwork.Cell cell = visibleNetwork.cell;
|
| +
|
| + assertEquals(VISIBLE_CELL1.cellId(), cell.cellId);
|
| + assertEquals(VISIBLE_CELL1.locationAreaCode(), cell.locationAreaCode);
|
| + assertEquals(VISIBLE_CELL1.mobileCountryCode(), cell.mobileCountryCode);
|
| + assertEquals(VISIBLE_CELL1.mobileNetworkCode(), cell.mobileNetworkCode);
|
| + assertEquals(VISIBLE_CELL1.primaryScramblingCode(), cell.primaryScramblingCode);
|
| + assertEquals(VISIBLE_CELL1.physicalCellId(), cell.physicalCellId);
|
| + assertEquals(VISIBLE_CELL1.trackingAreaCode(), cell.trackingAreaCode);
|
| + assertEquals(VISIBLE_CELL1.timestampMs(), visibleNetwork.timestampMs);
|
| + assertEquals(connected, visibleNetwork.connected);
|
| + assertEquals(PartnerLocationDescriptor.VisibleNetwork.Cell.GSM, cell.type.intValue());
|
| +
|
| + assertEquals(VISIBLE_CELL1_PROTO_ENCODED, encodeVisibleNetwork(visibleNetwork));
|
| + }
|
| +
|
| + @Test
|
| + public void testVisibleCellToProtoEmptyCell() {
|
| + boolean connected = true;
|
| + PartnerLocationDescriptor.VisibleNetwork visibleNetwork = EMPTY_CELL.toProto(connected);
|
| + PartnerLocationDescriptor.VisibleNetwork.Cell cell = visibleNetwork.cell;
|
| +
|
| + assertEquals(VisibleCell.UNKNOWN_RADIO_TYPE, cell.type.intValue());
|
| + assertNull(cell.cellId);
|
| + assertNull(cell.locationAreaCode);
|
| + assertNull(cell.mobileCountryCode);
|
| + assertNull(cell.mobileNetworkCode);
|
| + assertNull(cell.primaryScramblingCode);
|
| + assertNull(cell.physicalCellId);
|
| + assertNull(cell.trackingAreaCode);
|
| + assertNull(visibleNetwork.timestampMs);
|
| + assertEquals(connected, visibleNetwork.connected);
|
| +
|
| + assertEquals(EMPTY_CELL_PROTO_ENCODED, encodeVisibleNetwork(visibleNetwork));
|
| + }
|
| +
|
| + @Test
|
| public void testVisibleNetworksCreate() {
|
| Set<VisibleCell> expectedVisibleCells =
|
| new HashSet<VisibleCell>(Arrays.asList(VISIBLE_CELL1, VISIBLE_CELL2));
|
| @@ -207,4 +300,17 @@ public class VisibleNetworksTest {
|
| assertTrue(visibleNetworks.isEmpty());
|
| assertFalse(VISIBLE_NETWORKS1.isEmpty());
|
| }
|
| -}
|
| +
|
| + private static String encodeVisibleNetwork(
|
| + PartnerLocationDescriptor.VisibleNetwork visibleNetwork) {
|
| + PartnerLocationDescriptor.LocationDescriptor locationDescriptor =
|
| + new PartnerLocationDescriptor.LocationDescriptor();
|
| + locationDescriptor.role = PartnerLocationDescriptor.CURRENT_LOCATION;
|
| + locationDescriptor.producer = PartnerLocationDescriptor.DEVICE_LOCATION;
|
| + locationDescriptor.visibleNetwork = new PartnerLocationDescriptor.VisibleNetwork[1];
|
| + locationDescriptor.visibleNetwork[0] = visibleNetwork;
|
| +
|
| + return Base64.encodeToString(
|
| + MessageNano.toByteArray(locationDescriptor), Base64.NO_WRAP | Base64.URL_SAFE);
|
| + }
|
| +}
|
|
|