Merge "Adds Ability to Test with SoundTrigger Stub HAL" into nyc-dev am: 1b77bda885

am: bbfcd350bf

* commit 'bbfcd350bf442825d5dd2c250e597b64ba07fc4d':
  Adds Ability to Test with SoundTrigger Stub HAL
This commit is contained in:
Ryan Bavetta
2016-03-04 06:23:07 +00:00
committed by android-build-merger
3 changed files with 97 additions and 2 deletions

View File

@@ -18,7 +18,14 @@ include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := tests
LOCAL_SRC_FILES := $(call all-subdir-java-files)
ifeq ($(SOUND_TRIGGER_USE_STUB_MODULE), 1)
LOCAL_SRC_FILES := $(call all-subdir-java-files)
LOCAL_PRIVILEGED_MODULE := true
LOCAL_CERTIFICATE := platform
TARGET_OUT_DATA_APPS_PRIVILEGED := $(TARGET_OUT_DATA)/priv-app
else
LOCAL_SRC_FILES := src/android/hardware/soundtrigger/SoundTriggerTest.java
endif
LOCAL_JAVA_LIBRARIES := android.test.runner

View File

@@ -14,7 +14,10 @@
limitations under the License.
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="android.hardware.soundtrigger">
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="android.hardware.soundtrigger">
<uses-permission android:name="android.permission.MANAGE_SOUND_TRIGGER" />
<application>
<uses-library android:name="android.test.runner" />
</application>

View File

@@ -0,0 +1,85 @@
/*
* Copyright (C) 2014 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.hardware.soundtrigger;
import java.util.Random;
import java.util.UUID;
import android.content.Context;
import android.hardware.soundtrigger.SoundTrigger.GenericSoundModel;
import android.media.soundtrigger.SoundTriggerManager;
import android.os.ParcelUuid;
import android.os.ServiceManager;
import android.test.AndroidTestCase;
import android.test.suitebuilder.annotation.SmallTest;
import com.android.internal.app.ISoundTriggerService;
import java.util.Arrays;
import java.util.Random;
import java.util.UUID;
public class GenericSoundModelTest extends AndroidTestCase {
private Random mRandom = new Random();
@SmallTest
public void testUpdateGenericSoundModel() throws Exception {
Context context = getContext();
ISoundTriggerService mSoundTriggerService = ISoundTriggerService.Stub.asInterface(
ServiceManager.getService(Context.SOUND_TRIGGER_SERVICE));
SoundTriggerManager mSoundTriggerManager = (SoundTriggerManager) context.getSystemService(
Context.SOUND_TRIGGER_SERVICE);
byte[] data = new byte[1024];
mRandom.nextBytes(data);
UUID modelUuid = UUID.randomUUID();
UUID mVendorUuid = UUID.randomUUID();
GenericSoundModel model = new GenericSoundModel(modelUuid, mVendorUuid, data);
mSoundTriggerService.updateSoundModel(model);
GenericSoundModel returnedModel =
mSoundTriggerService.getSoundModel(new ParcelUuid(modelUuid));
assertEquals(model, returnedModel);
// Cleanup sound model
mSoundTriggerService.deleteSoundModel(new ParcelUuid(modelUuid));
}
@SmallTest
public void testDeleteGenericSoundModel() throws Exception {
Context context = getContext();
ISoundTriggerService mSoundTriggerService = ISoundTriggerService.Stub.asInterface(
ServiceManager.getService(Context.SOUND_TRIGGER_SERVICE));
SoundTriggerManager mSoundTriggerManager = (SoundTriggerManager) context.getSystemService(
Context.SOUND_TRIGGER_SERVICE);
byte[] data = new byte[1024];
mRandom.nextBytes(data);
UUID modelUuid = UUID.randomUUID();
UUID mVendorUuid = UUID.randomUUID();
GenericSoundModel model = new GenericSoundModel(modelUuid, mVendorUuid, data);
mSoundTriggerService.updateSoundModel(model);
mSoundTriggerService.deleteSoundModel(new ParcelUuid(modelUuid));
GenericSoundModel returnedModel =
mSoundTriggerService.getSoundModel(new ParcelUuid(modelUuid));
assertEquals(null, returnedModel);
}
}