1ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang/* 2ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang * Copyright (C) 2014 The Android Open Source Project 3ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang * 4ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang * Licensed under the Apache License, Version 2.0 (the "License"); 5ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang * you may not use this file except in compliance with the License. 6ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang * You may obtain a copy of the License at 7ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang * 8ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang * http://www.apache.org/licenses/LICENSE-2.0 9ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang * 10ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang * Unless required by applicable law or agreed to in writing, software 11ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang * distributed under the License is distributed on an "AS IS" BASIS, 12ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang * See the License for the specific language governing permissions and 14ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang * limitations under the License. 15ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang */ 16ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang 17ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wangpackage android.bluetooth.le; 18ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang 19ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wangimport android.test.suitebuilder.annotation.SmallTest; 20ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang 21ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wangimport junit.framework.TestCase; 22ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang 23ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang/** 24ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang * Test for Bluetooth LE {@link ScanSettings}. 25ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang */ 26ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wangpublic class ScanSettingsTest extends TestCase { 27ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang 28ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang @SmallTest 29ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang public void testCallbackType() { 30ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang ScanSettings.Builder builder = new ScanSettings.Builder(); 31ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang builder.setCallbackType(ScanSettings.CALLBACK_TYPE_ALL_MATCHES); 32ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang builder.setCallbackType(ScanSettings.CALLBACK_TYPE_FIRST_MATCH); 33ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang builder.setCallbackType(ScanSettings.CALLBACK_TYPE_MATCH_LOST); 34ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang builder.setCallbackType( 35ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang ScanSettings.CALLBACK_TYPE_FIRST_MATCH | ScanSettings.CALLBACK_TYPE_MATCH_LOST); 36ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang try { 37ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang builder.setCallbackType( 38ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang ScanSettings.CALLBACK_TYPE_ALL_MATCHES | ScanSettings.CALLBACK_TYPE_MATCH_LOST); 39ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang fail("should have thrown IllegalArgumentException!"); 40ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang } catch (IllegalArgumentException e) { 41ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang // nothing to do 42ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang } 43ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang 44ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang try { 45ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang builder.setCallbackType( 46ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang ScanSettings.CALLBACK_TYPE_ALL_MATCHES | 47ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang ScanSettings.CALLBACK_TYPE_FIRST_MATCH); 48ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang fail("should have thrown IllegalArgumentException!"); 49ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang } catch (IllegalArgumentException e) { 50ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang // nothing to do 51ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang } 52ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang 53ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang try { 54ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang builder.setCallbackType( 55ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang ScanSettings.CALLBACK_TYPE_ALL_MATCHES | 56ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang ScanSettings.CALLBACK_TYPE_FIRST_MATCH | 57ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang ScanSettings.CALLBACK_TYPE_MATCH_LOST); 58ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang fail("should have thrown IllegalArgumentException!"); 59ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang } catch (IllegalArgumentException e) { 60ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang // nothing to do 61ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang } 62ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang 63ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang } 64ec64dbfbc0c7ecf41e17f3872c2d0109096f1c7aWei Wang} 65