blob: 133b4baa714a98d61c7a1d8b2e78250a107b1fb6 [file] [log] [blame]
/*
* Copyright (C) 2017 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.internal.telephony;
import static org.junit.Assert.assertEquals;
import android.os.Parcel;
import android.telephony.CellIdentityCdma;
import android.test.AndroidTestCase;
import android.test.suitebuilder.annotation.SmallTest;
/** Unit tests for {@link CellIdentityCdma}. */
public class CellIdentityCdmaTest extends AndroidTestCase {
private static final String LOG_TAG = "CellIdentityCdmaTest";
// Network Id ranges from 0 to 65535.
private static final int NETWORK_ID = 65535;
// CDMA System Id ranges from 0 to 32767
private static final int SYSTEM_ID = 32767;
// Base Station Id ranges from 0 to 65535
private static final int BASESTATION_ID = 65535;
// Longitude ranges from -2592000 to 2592000.
private static final int LONGITUDE = 2592000;
// Latitude ranges from -1296000 to 1296000.
private static final int LATITUDE = 1296000;
private static final String ALPHA_LONG = "long";
private static final String ALPHA_SHORT = "short";
@SmallTest
public void testConstructor() {
CellIdentityCdma ci =
new CellIdentityCdma(NETWORK_ID, SYSTEM_ID, BASESTATION_ID, LONGITUDE, LATITUDE,
ALPHA_LONG, ALPHA_SHORT);
assertEquals(NETWORK_ID, ci.getNetworkId());
assertEquals(LATITUDE, ci.getLatitude());
assertEquals(LONGITUDE, ci.getLongitude());
assertEquals(ALPHA_LONG, ci.getOperatorAlphaLong());
assertEquals(ALPHA_SHORT, ci.getOperatorAlphaShort());
String globalCi = Integer.toString(SYSTEM_ID, 16) + Integer.toString(NETWORK_ID, 16)
+ Integer.toString(BASESTATION_ID, 16);
assertEquals(globalCi, ci.getGlobalCellId());
}
@SmallTest
public void testNullIsland() {
CellIdentityCdma ci =
new CellIdentityCdma(NETWORK_ID, SYSTEM_ID, BASESTATION_ID, -1, 0,
ALPHA_LONG, ALPHA_SHORT);
assertEquals(Integer.MAX_VALUE, ci.getLatitude());
assertEquals(Integer.MAX_VALUE, ci.getLongitude());
}
@SmallTest
public void testEquals() {
CellIdentityCdma ciA =
new CellIdentityCdma(NETWORK_ID, SYSTEM_ID, BASESTATION_ID, LONGITUDE, LATITUDE,
ALPHA_LONG, ALPHA_SHORT);
CellIdentityCdma ciB =
new CellIdentityCdma(NETWORK_ID, SYSTEM_ID, BASESTATION_ID, LONGITUDE, LATITUDE,
ALPHA_LONG, ALPHA_SHORT);
assertTrue(ciA.equals(ciB));
ciA = new CellIdentityCdma(NETWORK_ID, SYSTEM_ID, BASESTATION_ID, LONGITUDE, LATITUDE,
null, null);
ciB = new CellIdentityCdma(NETWORK_ID, SYSTEM_ID, BASESTATION_ID, LONGITUDE, LATITUDE,
null, null);
assertTrue(ciA.equals(ciB));
ciA = new CellIdentityCdma(NETWORK_ID, SYSTEM_ID, BASESTATION_ID, LONGITUDE, LATITUDE,
ALPHA_LONG, ALPHA_SHORT);
ciB = new CellIdentityCdma(NETWORK_ID, SYSTEM_ID, BASESTATION_ID, LONGITUDE, LATITUDE,
null, null);
assertFalse(ciA.equals(ciB));
}
@SmallTest
public void testParcel() {
CellIdentityCdma ci =
new CellIdentityCdma(NETWORK_ID, SYSTEM_ID, BASESTATION_ID, LONGITUDE, LATITUDE,
ALPHA_LONG, ALPHA_SHORT);
Parcel p = Parcel.obtain();
ci.writeToParcel(p, 0);
p.setDataPosition(0);
CellIdentityCdma newCi = CellIdentityCdma.CREATOR.createFromParcel(p);
assertEquals(ci, newCi);
}
}