Merge "CTS Tests" into honeycomb-mr1
diff --git a/apps/CtsVerifier/AndroidManifest.xml b/apps/CtsVerifier/AndroidManifest.xml
index 24e9fdc..e104d82 100644
--- a/apps/CtsVerifier/AndroidManifest.xml
+++ b/apps/CtsVerifier/AndroidManifest.xml
@@ -69,32 +69,23 @@
<meta-data android:name="test_category" android:value="@string/test_category_sensors" />
</activity>
- <activity android:name=".sensors.MagnetometerTestActivity" android:label="@string/snsr_mag_test"
- android:screenOrientation="nosensor">
+ <activity android:name=".audioquality.AudioQualityVerifierActivity"
+ android:label="@string/aq_verifier">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.cts.intent.category.MANUAL_TEST" />
</intent-filter>
- <meta-data android:name="test_category" android:value="@string/test_category_sensors" />
+ <meta-data android:name="test_category" android:value="@string/test_category_audio" />
</activity>
- <activity android:name=".audioquality.AudioQualityVerifierActivity"
- android:label="@string/aq_verifier">
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.cts.intent.category.MANUAL_TEST" />
- </intent-filter>
- <meta-data android:name="test_category" android:value="@string/test_category_audio" />
- </activity>
-
- <activity android:name=".audioquality.CalibrateVolumeActivity"
- android:label="@string/aq_calibrate_volume_name" />
-
- <activity android:name=".audioquality.ViewResultsActivity"
- android:label="@string/aq_view_results_name" />
+ <activity android:name=".audioquality.CalibrateVolumeActivity"
+ android:label="@string/aq_calibrate_volume_name" />
- <service android:name=".audioquality.ExperimentService" />
-
+ <activity android:name=".audioquality.ViewResultsActivity"
+ android:label="@string/aq_view_results_name" />
+
+ <service android:name=".audioquality.ExperimentService" />
+
</application>
</manifest>
diff --git a/apps/CtsVerifier/src/com/android/cts/verifier/sensors/MagnetometerTestActivity.java b/apps/CtsVerifier/src/com/android/cts/verifier/sensors/MagnetometerTestActivity.java
deleted file mode 100644
index f3ba411..0000000
--- a/apps/CtsVerifier/src/com/android/cts/verifier/sensors/MagnetometerTestActivity.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright (C) 2010 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 com.android.cts.verifier.sensors;
-
-import com.android.cts.verifier.PassFailButtons;
-import com.android.cts.verifier.R;
-
-import android.content.Context;
-import android.hardware.Sensor;
-import android.hardware.SensorManager;
-import android.opengl.GLSurfaceView;
-import android.os.Bundle;
-
-/**
- * CTS Verifier case for verifying correct integration of accelerometer.
- * Displays a wedge using OpenGL that, on a correctly-integrated device, always
- * points down.
- */
-public class MagnetometerTestActivity extends PassFailButtons.Activity {
- private GLSurfaceView mGLSurfaceView;
-
- private AccelerometerTestRenderer mListener;
-
- private SensorManager mSensorManager;
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
-
- mSensorManager = (SensorManager) getApplicationContext().getSystemService(
- Context.SENSOR_SERVICE);
- AccelerometerTestRenderer renderer = new MagnetometerTestRenderer(this);
- mListener = renderer;
-
- setContentView(R.layout.pass_fail_gl);
- setPassFailButtonClickListeners();
- setInfoResources(R.string.snsr_mag_test, R.string.snsr_mag_test_info, -1);
- mGLSurfaceView = (GLSurfaceView) findViewById(R.id.gl_surface_view);
- mGLSurfaceView.setRenderer(renderer);
- }
-
- @Override
- protected void onPause() {
- super.onPause();
- mSensorManager.unregisterListener(mListener);
- mGLSurfaceView.onPause();
- }
-
- @Override
- protected void onResume() {
- super.onResume();
- mSensorManager.registerListener(mListener, mSensorManager.getSensorList(
- Sensor.TYPE_MAGNETIC_FIELD).get(0), SensorManager.SENSOR_DELAY_UI);
- mGLSurfaceView.onResume();
- }
-}
diff --git a/apps/CtsVerifier/src/com/android/cts/verifier/sensors/MagnetometerTestRenderer.java b/apps/CtsVerifier/src/com/android/cts/verifier/sensors/MagnetometerTestRenderer.java
deleted file mode 100644
index b5d4587..0000000
--- a/apps/CtsVerifier/src/com/android/cts/verifier/sensors/MagnetometerTestRenderer.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright (C) 2010 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 com.android.cts.verifier.sensors;
-
-import android.content.Context;
-import android.hardware.Sensor;
-import android.hardware.SensorEvent;
-
-public class MagnetometerTestRenderer extends AccelerometerTestRenderer {
- public MagnetometerTestRenderer(Context context) {
- super(context);
- }
-
- @Override
- public void onSensorChanged(SensorEvent event) {
- if (event.sensor.getType() == Sensor.TYPE_MAGNETIC_FIELD) {
- /*
- * The base class is written for accelerometer, where the vector
- * points *away* from the thing being measured (i.e. gravity). But
- * our vector points *toward* the thing being measured (i.e.
- * magnetic north pole). Accordingly, the base class has an
- * inversion to handle that that doesn't apply to us, so the
- * simplest method is just to flip our vector to point in the exact
- * opposite direction and then everything works out in the base
- * class.
- */
- event.values[0] *= -1;
- event.values[1] *= -1;
- event.values[2] *= -1;
-
- // rest of method is the same as in base class
- normalize(event.values);
- event.values[1] *= -1;
- crossProduct(event.values, Z_AXIS, mCrossProd);
- mAngle = (float) Math.acos(dotProduct(event.values, Z_AXIS));
- }
- }
-}
diff --git a/tests/tests/net/src/android/net/cts/NetworkInfoTest.java b/tests/tests/net/src/android/net/cts/NetworkInfoTest.java
index b333be7..6800c43 100644
--- a/tests/tests/net/src/android/net/cts/NetworkInfoTest.java
+++ b/tests/tests/net/src/android/net/cts/NetworkInfoTest.java
@@ -16,16 +16,14 @@
package android.net.cts;
+import dalvik.annotation.TestTargetClass;
+
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.NetworkInfo.DetailedState;
import android.net.NetworkInfo.State;
import android.test.AndroidTestCase;
-import dalvik.annotation.TestLevel;
-import dalvik.annotation.TestTargetClass;
-import dalvik.annotation.TestTargetNew;
-import dalvik.annotation.TestTargets;
@TestTargetClass(NetworkInfo.class)
public class NetworkInfoTest extends AndroidTestCase {
@@ -35,127 +33,19 @@
public static final String MOBILE_TYPE_NAME = "mobile";
public static final String WIFI_TYPE_NAME = "WIFI";
- @TestTargets({
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- method = "isConnectedOrConnecting",
- args = {}
- ),
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- method = "setFailover",
- args = {boolean.class}
- ),
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- method = "isFailover",
- args = {}
- ),
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- method = "isRoaming",
- args = {}
- ),
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- method = "getType",
- args = {}
- ),
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- method = "getSubtype",
- args = {}
- ),
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- method = "getTypeName",
- args = {}
- ),
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- method = "getSubtypeName",
- args = {}
- ),
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- method = "setIsAvailable",
- args = {boolean.class}
- ),
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- method = "isAvailable",
- args = {}
- ),
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- method = "isConnected",
- args = {}
- ),
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- method = "getDetailedState",
- args = {}
- ),
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- method = "getState",
- args = {}
- ),
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- method = "getReason",
- args = {}
- ),
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- method = "getExtraInfo",
- args = {}
- ),
- @TestTargetNew(
- level = TestLevel.COMPLETE,
- method = "toString",
- args = {}
- )
- })
public void testAccessNetworkInfoProperties() {
ConnectivityManager cm = (ConnectivityManager) getContext().getSystemService(
Context.CONNECTIVITY_SERVICE);
NetworkInfo[] ni = cm.getAllNetworkInfo();
- assertTrue(ni.length >= 2);
+ assertTrue(ni.length >= 1);
for (NetworkInfo netInfo: ni) {
switch (netInfo.getType()) {
case TYPE_MOBILE:
- // don't know the return value
- netInfo.getSubtype();
- assertEquals(MOBILE_TYPE_NAME, netInfo.getTypeName());
- // don't know the return value
- netInfo.getSubtypeName();
- if(netInfo.isConnectedOrConnecting()) {
- assertTrue(netInfo.isAvailable());
- assertTrue(netInfo.isConnected());
- assertEquals(State.CONNECTED, netInfo.getState());
- assertEquals(DetailedState.CONNECTED, netInfo.getDetailedState());
- netInfo.getReason();
- netInfo.getExtraInfo();
- }
- assertFalse(netInfo.isRoaming());
- assertNotNull(netInfo.toString());
+ assertNetworkInfo(netInfo, MOBILE_TYPE_NAME);
break;
case TYPE_WIFI:
- netInfo.getSubtype();
- assertEquals(WIFI_TYPE_NAME, netInfo.getTypeName());
- netInfo.getSubtypeName();
- if(netInfo.isConnectedOrConnecting()) {
- assertTrue(netInfo.isAvailable());
- assertTrue(netInfo.isConnected());
- assertEquals(State.CONNECTED, netInfo.getState());
- assertEquals(DetailedState.CONNECTED, netInfo.getDetailedState());
- netInfo.getReason();
- netInfo.getExtraInfo();
- }
- assertFalse(netInfo.isRoaming());
- assertNotNull(netInfo.toString());
+ assertNetworkInfo(netInfo, WIFI_TYPE_NAME);
break;
// TODO: Add BLUETOOTH_TETHER testing
default:
@@ -163,4 +53,21 @@
}
}
}
+
+ private void assertNetworkInfo(NetworkInfo netInfo, String expectedTypeName) {
+ assertEquals(expectedTypeName, netInfo.getTypeName());
+ if(netInfo.isConnectedOrConnecting()) {
+ assertTrue(netInfo.isAvailable());
+ if (State.CONNECTED == netInfo.getState()) {
+ assertTrue(netInfo.isConnected());
+ }
+ assertTrue(State.CONNECTING == netInfo.getState()
+ || State.CONNECTED == netInfo.getState());
+ assertTrue(DetailedState.SCANNING == netInfo.getDetailedState()
+ || DetailedState.CONNECTING == netInfo.getDetailedState()
+ || DetailedState.AUTHENTICATING == netInfo.getDetailedState()
+ || DetailedState.CONNECTED == netInfo.getDetailedState());
+ }
+ assertNotNull(netInfo.toString());
+ }
}