182500dd86631a08d290929f64824c4fd22f0aa75Wei Wang/* 282500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * Copyright (C) 2014 The Android Open Source Project 382500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * 482500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * Licensed under the Apache License, Version 2.0 (the "License"); 582500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * you may not use this file except in compliance with the License. 682500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * You may obtain a copy of the License at 782500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * 882500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * http://www.apache.org/licenses/LICENSE-2.0 982500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * 1082500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * Unless required by applicable law or agreed to in writing, software 1182500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * distributed under the License is distributed on an "AS IS" BASIS, 1282500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1382500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * See the License for the specific language governing permissions and 1482500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * limitations under the License. 1582500dd86631a08d290929f64824c4fd22f0aa75Wei Wang */ 1682500dd86631a08d290929f64824c4fd22f0aa75Wei Wang 1782500dd86631a08d290929f64824c4fd22f0aa75Wei Wangpackage android.bluetooth; 1882500dd86631a08d290929f64824c4fd22f0aa75Wei Wang 1982500dd86631a08d290929f64824c4fd22f0aa75Wei Wangimport android.os.ParcelUuid; 2082500dd86631a08d290929f64824c4fd22f0aa75Wei Wangimport android.test.suitebuilder.annotation.SmallTest; 2182500dd86631a08d290929f64824c4fd22f0aa75Wei Wang 2282500dd86631a08d290929f64824c4fd22f0aa75Wei Wangimport junit.framework.TestCase; 2382500dd86631a08d290929f64824c4fd22f0aa75Wei Wang 2482500dd86631a08d290929f64824c4fd22f0aa75Wei Wang/** 2582500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * Unit test cases for {@link BluetoothUuid}. 2682500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * <p> 2782500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * To run this test, use adb shell am instrument -e class 'android.bluetooth.BluetoothUuidTest' -w 2882500dd86631a08d290929f64824c4fd22f0aa75Wei Wang * 'com.android.bluetooth.tests/android.bluetooth.BluetoothTestRunner' 2982500dd86631a08d290929f64824c4fd22f0aa75Wei Wang */ 3082500dd86631a08d290929f64824c4fd22f0aa75Wei Wangpublic class BluetoothUuidTest extends TestCase { 3182500dd86631a08d290929f64824c4fd22f0aa75Wei Wang 3282500dd86631a08d290929f64824c4fd22f0aa75Wei Wang @SmallTest 3382500dd86631a08d290929f64824c4fd22f0aa75Wei Wang public void testUuidParser() { 3482500dd86631a08d290929f64824c4fd22f0aa75Wei Wang byte[] uuid16 = new byte[] { 3582500dd86631a08d290929f64824c4fd22f0aa75Wei Wang 0x0B, 0x11 }; 3682500dd86631a08d290929f64824c4fd22f0aa75Wei Wang assertEquals(ParcelUuid.fromString("0000110B-0000-1000-8000-00805F9B34FB"), 3782500dd86631a08d290929f64824c4fd22f0aa75Wei Wang BluetoothUuid.parseUuidFrom(uuid16)); 3882500dd86631a08d290929f64824c4fd22f0aa75Wei Wang 3982500dd86631a08d290929f64824c4fd22f0aa75Wei Wang byte[] uuid32 = new byte[] { 4082500dd86631a08d290929f64824c4fd22f0aa75Wei Wang 0x0B, 0x11, 0x33, (byte) 0xFE }; 4182500dd86631a08d290929f64824c4fd22f0aa75Wei Wang assertEquals(ParcelUuid.fromString("FE33110B-0000-1000-8000-00805F9B34FB"), 4282500dd86631a08d290929f64824c4fd22f0aa75Wei Wang BluetoothUuid.parseUuidFrom(uuid32)); 4382500dd86631a08d290929f64824c4fd22f0aa75Wei Wang 4482500dd86631a08d290929f64824c4fd22f0aa75Wei Wang byte[] uuid128 = new byte[] { 4582500dd86631a08d290929f64824c4fd22f0aa75Wei Wang 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 4682500dd86631a08d290929f64824c4fd22f0aa75Wei Wang 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, (byte) 0xFF }; 4782500dd86631a08d290929f64824c4fd22f0aa75Wei Wang assertEquals(ParcelUuid.fromString("FF0F0E0D-0C0B-0A09-0807-0060504030201"), 4882500dd86631a08d290929f64824c4fd22f0aa75Wei Wang BluetoothUuid.parseUuidFrom(uuid128)); 4982500dd86631a08d290929f64824c4fd22f0aa75Wei Wang } 5051800847d9a9965a5d00a7960abb50983651d4a2Wei Wang 5151800847d9a9965a5d00a7960abb50983651d4a2Wei Wang @SmallTest 5251800847d9a9965a5d00a7960abb50983651d4a2Wei Wang public void testUuidType() { 5351800847d9a9965a5d00a7960abb50983651d4a2Wei Wang assertTrue(BluetoothUuid.is16BitUuid( 5451800847d9a9965a5d00a7960abb50983651d4a2Wei Wang ParcelUuid.fromString("0000110B-0000-1000-8000-00805F9B34FB"))); 5551800847d9a9965a5d00a7960abb50983651d4a2Wei Wang assertFalse(BluetoothUuid.is32BitUuid( 5651800847d9a9965a5d00a7960abb50983651d4a2Wei Wang ParcelUuid.fromString("0000110B-0000-1000-8000-00805F9B34FB"))); 5751800847d9a9965a5d00a7960abb50983651d4a2Wei Wang 5851800847d9a9965a5d00a7960abb50983651d4a2Wei Wang assertFalse(BluetoothUuid.is16BitUuid( 5951800847d9a9965a5d00a7960abb50983651d4a2Wei Wang ParcelUuid.fromString("FE33110B-0000-1000-8000-00805F9B34FB"))); 6051800847d9a9965a5d00a7960abb50983651d4a2Wei Wang assertTrue(BluetoothUuid.is32BitUuid( 6151800847d9a9965a5d00a7960abb50983651d4a2Wei Wang ParcelUuid.fromString("FE33110B-0000-1000-8000-00805F9B34FB"))); 6251800847d9a9965a5d00a7960abb50983651d4a2Wei Wang assertFalse(BluetoothUuid.is32BitUuid( 6351800847d9a9965a5d00a7960abb50983651d4a2Wei Wang ParcelUuid.fromString("FE33110B-1000-1000-8000-00805F9B34FB"))); 6451800847d9a9965a5d00a7960abb50983651d4a2Wei Wang 6551800847d9a9965a5d00a7960abb50983651d4a2Wei Wang } 6682500dd86631a08d290929f64824c4fd22f0aa75Wei Wang} 67