AOSP/Messaging - Moved LOCAL_COMPATIBILITY_SUITE to tests/Android.mk.

+ Deleted the unnecessary blankId check. Updated the TODO comment for NUM_TEST_CONVERSATIONS+4.
+ Added AndroidTest.xml
+ Added "LOCAL_PROGUARD_ENABLED := disabled" for tests to pass on cf.

Bug: 126516784

Test: make messagingtests and tested the messaging UI manually. Ran the following CTS tests on Pixel phone.

$ make -j 40
  -rw-r--r-- 1 rtenneti primarygroup 8529760 Mar  8 16:46 out/target/product/marlin/system/app/messaging/messaging.apk

$ make messagingtests -j
  -rw-r--r-- 1 rtenneti primarygroup 729713 Mar 13 14:22 out/target/product/marlin/testcases/messagingtests/messagingtests.apk

$ adb install -r -d out/target/product/marlin/system/app/messaging/messaging.apk
$ adb install -r -d out/target/product/marlin/testcases/messagingtests/messagingtests.apk

atest
-----
$ cd .../packages/apps/Messaging
$ atest
  ...
  Results from tests that require device:

  Summary
  -------
  messagingtests: Passed: 113, Failed: 0, Ignored: 0

  All tests passed!

acloud test
-----------
$ lunch aosp_cf_x86_phone-userdebug

$ make -j 40
  -rw-r--r-- 1 rtenneti primarygroup 10585182 Mar 15 15:19 ./target/product/vsoc_x86/system/app/messaging/messaging.apk
$ make messagingtests -j
  -rw-r--r-- 1 rtenneti primarygroup 643697 Mar 15 15:57 ./target/product/vsoc_x86/system/app/messagingtests/messagingtests.apk

$ acloud reconnect
$ adb devices
  List of devices attached
  127.0.0.1:52761	device

$ adb install -r -d out/target/product/vsoc_x86/system/app/messaging/messaging.apk
$ adb install -r -d out/target/product/vsoc_x86/system/app/messagingtests/messagingtests.apk

$ cd packages/apps/Messaging
$ atest messagingtests -- --abi x86 --serial 127.0.0.1:52761

Change-Id: I6b1143db6c596805f3c48f310323e0e02d344d00
This commit is contained in:
Raman Tenneti
2019-03-13 14:29:53 -07:00
parent 7d08344e9b
commit a3b82b5fff
7 changed files with 45 additions and 10 deletions

View File

@@ -70,6 +70,10 @@ LOCAL_CERTIFICATE := platform
LOCAL_SDK_VERSION := current
LOCAL_MODULE_PATH := $(TARGET_OUT_APPS)
LOCAL_COMPATIBILITY_SUITE := general-tests
include $(BUILD_PACKAGE)
include $(call all-makefiles-under, $(LOCAL_PATH))

View File

@@ -12,6 +12,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-keep class com.android.messaging.ui.contact.* { *; }
-assumenosideeffects public class com.android.messaging.util.Trace {
public void beginSection(...);
public void endSection(...);

View File

@@ -35,6 +35,8 @@
!private *;
}
-keep class com.android.messaging.ui.contact.* { *; }
# Keep the classes needed by emma
-keep class com.vladium.** { *; }

View File

@@ -21,6 +21,7 @@
-keepclassmembers class * {
@com.google.common.annotations.VisibleForTesting *;
}
-keep class com.android.messaging.ui.contact.* { *; }
# Keep methods that have the @VisibleForAnimation annotation
-keep @interface com.android.messaging.annotation.VisibleForAnimation

View File

@@ -24,9 +24,13 @@ LOCAL_PACKAGE_NAME := messagingtests
LOCAL_INSTRUMENTATION_FOR := messaging
LOCAL_PROGUARD_ENABLED := disabled
# Matching ../Android.mk
LOCAL_SDK_VERSION := current
LOCAL_COMPATIBILITY_SUITE := general-tests
LOCAL_CERTIFICATE := platform
LOCAL_STATIC_JAVA_LIBRARIES := \

30
tests/AndroidTest.xml Normal file
View File

@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2019 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.
-->
<configuration description="Runs Messaging Tests.">
<option name="test-suite-tag" value="apct" />
<option name="test-suite-tag" value="apct-instrumentation" />
<target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller">
<option name="cleanup-apks" value="true" />
<option name="test-file-name" value="messagingtests.apk" />
<option name="test-file-name" value="messaging.apk" />
</target_preparer>
<test class="com.android.tradefed.testtype.InstrumentationTest" >
<option name="package" value="com.android.messaging.test" />
<option name="runner" value="android.test.InstrumentationTestRunner" />
</test>
</configuration>

View File

@@ -67,12 +67,6 @@ public class GetOrCreateConversationActionTest extends BugleTestCase {
final long threadId = MmsUtils.getOrCreateThreadId(mContext, recipients);
assertEquals(TestDataFactory.SMS_MMS_THREAD_ID_CURSOR_VALUE, threadId);
// TestDataFactory creates NUM_TEST_CONVERSATIONS conversations. blank
// conversation would be the next conversation.
final String blankId = BugleDatabaseOperations.getExistingConversation(db, threadId, false);
// TODO(rtenneti): Investigate why blankId is 4 more than NUM_TEST_CONVERSATIONS.
assertEquals(TestDataFactory.NUM_TEST_CONVERSATIONS+4, Integer.parseInt((String)blankId));
ArrayList<StubActionServiceCallLog> calls = mService.getCalls();
GetOrCreateConversationActionMonitor monitor =
@@ -91,8 +85,7 @@ public class GetOrCreateConversationActionTest extends BugleTestCase {
assertTrue(result instanceof String);
// Make sure that we created a new conversation
// TODO(rtenneti): Investigate why blankId is 4 more than NUM_TEST_CONVERSATIONS.
assertEquals(TestDataFactory.NUM_TEST_CONVERSATIONS+4, Integer.parseInt((String)result));
assertEquals(TestDataFactory.NUM_TEST_CONVERSATIONS, Integer.parseInt((String)result));
// Now get the conversation that we just created again
monitor = GetOrCreateConversationAction.getOrCreateConversation(participants, null,
@@ -110,8 +103,7 @@ public class GetOrCreateConversationActionTest extends BugleTestCase {
final String conversationId = (String) result;
// Make sure that we found the same conversation id
// TODO(rtenneti): Investigate why blankId is 4 more than NUM_TEST_CONVERSATIONS.
assertEquals(TestDataFactory.NUM_TEST_CONVERSATIONS+4, Integer.parseInt((String)result));
assertEquals(TestDataFactory.NUM_TEST_CONVERSATIONS, Integer.parseInt((String)result));
final ArrayList<ParticipantData> conversationParticipants =
BugleDatabaseOperations.getParticipantsForConversation(db, conversationId);