10825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville/*
20825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Copyright (C) 2009 The Android Open Source Project
30825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville *
40825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Licensed under the Apache License, Version 2.0 (the "License");
50825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * you may not use this file except in compliance with the License.
60825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * You may obtain a copy of the License at
70825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville *
80825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville *      http://www.apache.org/licenses/LICENSE-2.0
90825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville *
100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unless required by applicable law or agreed to in writing, software
110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * distributed under the License is distributed on an "AS IS" BASIS,
120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * See the License for the specific language governing permissions and
140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * limitations under the License.
150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */
160825495a331bb44df395a0cdb79fab85e68db5d5Wink Savillepackage com.android.internal.telephony;
170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
180825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.os.Parcel;
190825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.test.AndroidTestCase;
200825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.telephony.NeighboringCellInfo;
210825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.test. suitebuilder.annotation.SmallTest;
220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
230825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport static android.telephony.TelephonyManager.NETWORK_TYPE_UNKNOWN;
240825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport static android.telephony.TelephonyManager.NETWORK_TYPE_EDGE;
250825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport static android.telephony.TelephonyManager.NETWORK_TYPE_GPRS;
260825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport static android.telephony.TelephonyManager.NETWORK_TYPE_UMTS;
270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
280825495a331bb44df395a0cdb79fab85e68db5d5Wink Savillepublic class NeighboringCellInfoTest extends AndroidTestCase {
290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    @SmallTest
300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    public void testConstructor() {
310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        int rssi = 31;
320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        NeighboringCellInfo nc;
330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        nc = new NeighboringCellInfo(rssi, "FFFFFFF", NETWORK_TYPE_EDGE);
350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(NETWORK_TYPE_EDGE, nc.getNetworkType());
360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(rssi, nc.getRssi());
370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(0xfff, nc.getLac());
380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(0xffff, nc.getCid());
390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(NeighboringCellInfo.UNKNOWN_CID, nc.getPsc());
400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        nc = new NeighboringCellInfo(rssi, "1FF", NETWORK_TYPE_UMTS);
420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(NETWORK_TYPE_UMTS, nc.getNetworkType());
430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(rssi, nc.getRssi());
440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(NeighboringCellInfo.UNKNOWN_CID, nc.getCid());
450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(NeighboringCellInfo.UNKNOWN_CID, nc.getLac());
460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(0x1ff, nc.getPsc());
470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        nc = new NeighboringCellInfo(rssi, "1FF", NETWORK_TYPE_UNKNOWN);
490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(NETWORK_TYPE_UNKNOWN, nc.getNetworkType());
500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(rssi, nc.getRssi());
510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(NeighboringCellInfo.UNKNOWN_CID, nc.getCid());
520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(NeighboringCellInfo.UNKNOWN_CID, nc.getLac());
530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(NeighboringCellInfo.UNKNOWN_CID, nc.getPsc());
540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    }
550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    @SmallTest
570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    public void testParcel() {
580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        int rssi = 20;
590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        NeighboringCellInfo nc = new NeighboringCellInfo(rssi, "12345678", NETWORK_TYPE_GPRS);
610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(NETWORK_TYPE_GPRS, nc.getNetworkType());
620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(rssi, nc.getRssi());
630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(0x1234, nc.getLac());
640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(0x5678, nc.getCid());
650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(NeighboringCellInfo.UNKNOWN_CID, nc.getPsc());
660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        Parcel p = Parcel.obtain();
680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        p.setDataPosition(0);
690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        nc.writeToParcel(p, 0);
700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        p.setDataPosition(0);
720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        NeighboringCellInfo nw = new NeighboringCellInfo(p);
730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(NETWORK_TYPE_GPRS, nw.getNetworkType());
740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(rssi, nw.getRssi());
750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(0x1234, nw.getLac());
760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(0x5678, nw.getCid());
770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        assertEquals(NeighboringCellInfo.UNKNOWN_CID, nw.getPsc());
780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville     }
790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville}
80