1/* 2 * Copyright (C) 2006 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17package com.android.internal.telephony; 18 19import com.android.internal.telephony.MccTable; 20 21import android.test.AndroidTestCase; 22import android.test.suitebuilder.annotation.SmallTest; 23 24import android.util.Log; 25 26public class MccTableTest extends AndroidTestCase { 27 private final static String LOG_TAG = "GSM"; 28 29 @SmallTest 30 public void testTimeZone() throws Exception { 31 assertEquals(MccTable.defaultTimeZoneForMcc(208), "ECT"); 32 assertEquals(MccTable.defaultTimeZoneForMcc(232), "Europe/Vienna"); 33 assertEquals(MccTable.defaultTimeZoneForMcc(655), "Africa/Johannesburg"); 34 assertEquals(MccTable.defaultTimeZoneForMcc(440), "Asia/Tokyo"); 35 assertEquals(MccTable.defaultTimeZoneForMcc(441), "Asia/Tokyo"); 36 assertEquals(MccTable.defaultTimeZoneForMcc(525), "Asia/Singapore"); 37 assertEquals(MccTable.defaultTimeZoneForMcc(240), null); // tz not defined, hence default 38 assertEquals(MccTable.defaultTimeZoneForMcc(0), null); // mcc not defined, hence default 39 assertEquals(MccTable.defaultTimeZoneForMcc(2000), null); // mcc not defined, hence default 40 } 41 42 @SmallTest 43 public void testCountryCode() throws Exception { 44 assertEquals(MccTable.countryCodeForMcc(270), "lu"); 45 assertEquals(MccTable.countryCodeForMcc(202), "gr"); 46 assertEquals(MccTable.countryCodeForMcc(750), "fk"); 47 assertEquals(MccTable.countryCodeForMcc(646), "mg"); 48 assertEquals(MccTable.countryCodeForMcc(314), "us"); 49 assertEquals(MccTable.countryCodeForMcc(300), ""); // mcc not defined, hence default 50 assertEquals(MccTable.countryCodeForMcc(0), ""); // mcc not defined, hence default 51 assertEquals(MccTable.countryCodeForMcc(2000), ""); // mcc not defined, hence default 52 } 53 54 @SmallTest 55 public void testLang() throws Exception { 56 assertEquals(MccTable.defaultLanguageForMcc(311), "en"); 57 assertEquals(MccTable.defaultLanguageForMcc(232), "de"); 58 assertEquals(MccTable.defaultLanguageForMcc(230), "cs"); 59 assertEquals(MccTable.defaultLanguageForMcc(204), "nl"); 60 assertEquals(MccTable.defaultLanguageForMcc(274), null); // lang not defined, hence default 61 assertEquals(MccTable.defaultLanguageForMcc(0), null); // mcc not defined, hence default 62 assertEquals(MccTable.defaultLanguageForMcc(2000), null); // mcc not defined, hence default 63 } 64 65 @SmallTest 66 public void testSmDigits() throws Exception { 67 assertEquals(MccTable.smallestDigitsMccForMnc(312), 3); 68 assertEquals(MccTable.smallestDigitsMccForMnc(430), 2); 69 assertEquals(MccTable.smallestDigitsMccForMnc(365), 3); 70 assertEquals(MccTable.smallestDigitsMccForMnc(536), 2); 71 assertEquals(MccTable.smallestDigitsMccForMnc(352), 2); // sd not defined, hence default 72 assertEquals(MccTable.smallestDigitsMccForMnc(0), 2); // mcc not defined, hence default 73 assertEquals(MccTable.smallestDigitsMccForMnc(2000), 2); // mcc not defined, hence default 74 } 75} 76