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