AOSP/Messaging - Changes to make unit tests to run and pass.
+ Added missing androix libraries to LOCAL_STATIC_ANDROID_LIBRARIES.
+ Added keep class statements for androidx and messaging classes.
+ Deleted Assert.isEngBuild call (this package is the last user of that method).
+ Added import statements for androidx classes.

Test: manual - Tested the messaging UI. Ran the following tests on Pixel phone.

$ make -j 40
$ make messagingtests -j
$ find out -name "messaging*.apk" -print -exec ls -l {} \;
-rw-r----- 1 rtenneti primarygroup 733809 Jul  9 17:42 out/target/product/bonito/testcases/messagingtests/arm64/messagingtests.apk
-rw-r----- 1 rtenneti primarygroup 10799132 Jul  9 18:34 out/target/product/bonito/product/app/messaging/messaging.apk

$ adb install -r -d -t  out/target/product/bonito/product/app/messaging/messaging.apk
$ adb install -r -d -t  out/target/product/bonito/testcases/messagingtests/arm64/messagingtests.apk
$ adb shell am instrument -w com.android.messaging.test

com.android.messaging.datamodel.BindingTest:.......
com.android.messaging.datamodel.BitmapPoolTest:....
com.android.messaging.datamodel.ConversationListTest:.
com.android.messaging.datamodel.DataModelTest:...
com.android.messaging.datamodel.FrequentContactsCursorBuilderTest:...
com.android.messaging.datamodel.MemoryCacheManagerTest:.
com.android.messaging.datamodel.ParticipantRefreshTest:..........
com.android.messaging.datamodel.action.ActionServiceSystemTest:.....
com.android.messaging.datamodel.action.ActionServiceTest:..
com.android.messaging.datamodel.action.ActionTest:.....
com.android.messaging.datamodel.action.GetOrCreateConversationActionTest:.
com.android.messaging.datamodel.action.ReadWriteDraftMessageActionTest:......
com.android.messaging.datamodel.data.ConversationMessageDataTest:...
com.android.messaging.datamodel.data.ConversationParticipantsDataTest:.
com.android.messaging.datamodel.media.ImageRequestTest:..
com.android.messaging.datamodel.media.MediaResourceManagerTest:.....
com.android.messaging.ui.CustomHeaderViewPagerTest:.
com.android.messaging.ui.MultiAttachmentLayoutTest:...
com.android.messaging.ui.attachmentchooser.AttachmentChooserFragmentTest:.
com.android.messaging.ui.contact.ContactListItemViewTest:....
com.android.messaging.ui.contact.ContactPickerFragmentTest:......
com.android.messaging.ui.conversation.ComposeMessageViewTest:..
com.android.messaging.ui.conversation.ConversationActivityUiStateTest:....
com.android.messaging.ui.conversation.ConversationFragmentTest:..
com.android.messaging.ui.conversation.ConversationInputManagerTest:.....
com.android.messaging.ui.conversation.ConversationMessageViewTest:...
com.android.messaging.ui.conversationlist.ConversationListFragmentTest:...
com.android.messaging.ui.conversationlist.ConversationListItemViewTest:....
com.android.messaging.ui.mediapicker.AudioRecordViewTest:.
com.android.messaging.ui.mediapicker.CameraManagerTest:......
com.android.messaging.ui.mediapicker.GalleryGridItemViewTest:.....
com.android.messaging.ui.mediapicker.MediaPickerTest:..
com.android.messaging.util.BugleGservicesTest:.
com.android.messaging.util.YouTubeUtilTest:.
Test results for InstrumentationTestRunner=.........................................
.........................................
...............................
Time: 9.903

OK (113 tests)

Change-Id: If8fd8036791027739eb9bbb1d3849a46211a5137
diff --git a/Android.mk b/Android.mk
index 09214ba..5be9f0a 100644
--- a/Android.mk
+++ b/Android.mk
@@ -23,14 +23,16 @@
 LOCAL_USE_AAPT2 := true
 
 LOCAL_STATIC_ANDROID_LIBRARIES := \
+    androidx.appcompat_appcompat \
+    androidx.collection_collection \
     androidx.core_core \
+    androidx.fragment_fragment \
     androidx.media_media \
     androidx.legacy_legacy-support-core-utils \
     androidx.legacy_legacy-support-core-ui \
-    androidx.fragment_fragment \
-    androidx.appcompat_appcompat \
     androidx.palette_palette \
     androidx.recyclerview_recyclerview \
+    androidx.viewpager_viewpager \
     androidx.legacy_legacy-support-v13 \
     colorpicker \
     libchips \
diff --git a/proguard-test.flags b/proguard-test.flags
index 353970a..50f69a2 100755
--- a/proguard-test.flags
+++ b/proguard-test.flags
@@ -18,8 +18,6 @@
 -dontobfuscate
 -dontoptimize
 
-
-
 # FLAG(dnotario): Until we rationalize how to handle tests (extensive unit tests will want similar
 # settings to these, but maybe we want to require VisibleForTesting attribute), just expose all
 # non-private methods. This means we cannot run tests on user builds for the moment.
@@ -35,7 +33,7 @@
   !private *;
 }
 
--keep class com.android.messaging.ui.contact.* { *; }
+-keep class com.android.messaging.ui.*.* { *; }
 
 # Keep the classes needed by emma
 -keep class com.vladium.** { *; }
diff --git a/proguard.flags b/proguard.flags
index cb04900..c5bbb42 100644
--- a/proguard.flags
+++ b/proguard.flags
@@ -21,7 +21,9 @@
 -keepclassmembers class * {
   @com.google.common.annotations.VisibleForTesting *;
 }
--keep class com.android.messaging.ui.contact.* { *; }
+-keep class com.android.messaging.* { *; }
+-keep class com.android.messaging.*.* { *; }
+-keep class com.android.messaging.*.*.* { *; }
 
 # Keep methods that have the @VisibleForAnimation annotation
 -keep @interface com.android.messaging.annotation.VisibleForAnimation
@@ -39,10 +41,13 @@
 -keep public class * extends androidx.fragment.app.Fragment
 -keep public class com.android.vcard.* { *; }
 
+-keep class androidx.collection.* { *; }
 -keep class androidx.core.* { *; }
 -keep class androidx.core.*.* { *; }
 -keep class androidx.appcompat.* { *; }
 -keep class androidx.appcompat.*.* { *; }
+-keep class androidx.recyclerview.widget.* { *; }
+-keep class androidx.viewpager.widget.* { *; }
 
 # Keep rastermill classes that need to be accessed from native code (JNI)
 -keep class android.support.rastermill.** { *; }
diff --git a/src/com/android/messaging/datamodel/DatabaseHelper.java b/src/com/android/messaging/datamodel/DatabaseHelper.java
index 2025e2c..ed4a287 100644
--- a/src/com/android/messaging/datamodel/DatabaseHelper.java
+++ b/src/com/android/messaging/datamodel/DatabaseHelper.java
@@ -603,7 +603,6 @@
      */
     @VisibleForTesting
     static DatabaseHelper getNewInstanceForTest(final Context context) {
-        Assert.isEngBuild();
         Assert.isTrue(BugleApplication.isRunningTests());
         return new DatabaseHelper(context);
     }
diff --git a/tests/src/com/android/messaging/ui/contact/ContactPickerFragmentTest.java b/tests/src/com/android/messaging/ui/contact/ContactPickerFragmentTest.java
index 1997a4d..47b65f1 100644
--- a/tests/src/com/android/messaging/ui/contact/ContactPickerFragmentTest.java
+++ b/tests/src/com/android/messaging/ui/contact/ContactPickerFragmentTest.java
@@ -18,6 +18,7 @@
 
 import android.content.Context;
 import android.database.Cursor;
+import androidx.viewpager.widget.PagerAdapter;
 import androidx.viewpager.widget.ViewPager;
 import android.test.suitebuilder.annotation.LargeTest;
 import android.view.View;
diff --git a/tests/src/com/android/messaging/ui/conversation/ConversationFragmentTest.java b/tests/src/com/android/messaging/ui/conversation/ConversationFragmentTest.java
index 797a2f1..658a1be 100644
--- a/tests/src/com/android/messaging/ui/conversation/ConversationFragmentTest.java
+++ b/tests/src/com/android/messaging/ui/conversation/ConversationFragmentTest.java
@@ -20,6 +20,7 @@
 import android.app.Fragment;
 import android.database.Cursor;
 import androidx.recyclerview.widget.RecyclerView;
+import androidx.recyclerview.widget.RecyclerView.Adapter;
 import android.test.suitebuilder.annotation.LargeTest;
 
 import com.android.messaging.FakeFactory;