Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b9da8f0c authored by Amin Shaikh's avatar Amin Shaikh
Browse files

Add test target to f/b/packages/overlays.

- Added IconPackOverlayTest to ensure that there icon pack overlays do not
get out of sync with the underlying drawables in each apk.
- Remove overlayable_icons_test.xml from each app since this test makes
them no longer necessary
- Add apcts target OverlayTests.apk - TODO add this to presubmit config
for settings and systemui

Bug: 134566901
Test: atest IconPackOverlayTest
Change-Id: I99243db4839ac41dad01abf9f83ebda757dbbb77
parent 2d6b238e
Loading
Loading
Loading
Loading
+0 −86
Original line number Diff line number Diff line
<!--
   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.
-->
<resources>
  <!-- overlayable_icons references all of the drawables in this package
       that are being overlayed by resource overlays. If you remove/rename
       any of these resources, you must also change the resource overlay icons.-->
  <array name="overlayable_icons">
    <item>@*android:drawable/ic_audio_alarm</item>
    <item>@*android:drawable/ic_audio_alarm_mute</item>
    <item>@*android:drawable/ic_battery_80_24dp</item>
    <item>@*android:drawable/ic_bluetooth_share_icon</item>
    <item>@*android:drawable/ic_bt_headphones_a2dp</item>
    <item>@*android:drawable/ic_bt_headset_hfp</item>
    <item>@*android:drawable/ic_bt_hearing_aid</item>
    <item>@*android:drawable/ic_bt_laptop</item>
    <item>@*android:drawable/ic_bt_misc_hid</item>
    <item>@*android:drawable/ic_bt_network_pan</item>
    <item>@*android:drawable/ic_bt_pointing_hid</item>
    <item>@*android:drawable/ic_corp_badge</item>
    <item>@*android:drawable/ic_expand_more</item>
    <item>@*android:drawable/ic_faster_emergency</item>
    <item>@*android:drawable/ic_file_copy</item>
    <item>@*android:drawable/ic_lock</item>
    <item>@*android:drawable/ic_lock_bugreport</item>
    <item>@*android:drawable/ic_lock_open</item>
    <item>@*android:drawable/ic_lock_power_off</item>
    <item>@*android:drawable/ic_lockscreen_ime</item>
    <item>@*android:drawable/ic_mode_edit</item>
    <item>@*android:drawable/ic_notifications_alerted</item>
    <item>@*android:drawable/ic_phone</item>
    <item>@*android:drawable/ic_qs_airplane</item>
    <item>@*android:drawable/ic_qs_auto_rotate</item>
    <item>@*android:drawable/ic_qs_battery_saver</item>
    <item>@*android:drawable/ic_qs_bluetooth</item>
    <item>@*android:drawable/ic_qs_dnd</item>
    <item>@*android:drawable/ic_qs_flashlight</item>
    <item>@*android:drawable/ic_qs_night_display_on</item>
    <item>@*android:drawable/ic_qs_ui_mode_night</item>
    <item>@*android:drawable/ic_restart</item>
    <item>@*android:drawable/ic_screenshot</item>
    <item>@*android:drawable/ic_settings_bluetooth</item>
    <item>@*android:drawable/ic_signal_cellular_0_4_bar</item>
    <item>@*android:drawable/ic_signal_cellular_0_5_bar</item>
    <item>@*android:drawable/ic_signal_cellular_1_4_bar</item>
    <item>@*android:drawable/ic_signal_cellular_1_5_bar</item>
    <item>@*android:drawable/ic_signal_cellular_2_4_bar</item>
    <item>@*android:drawable/ic_signal_cellular_2_5_bar</item>
    <item>@*android:drawable/ic_signal_cellular_3_4_bar</item>
    <item>@*android:drawable/ic_signal_cellular_3_5_bar</item>
    <item>@*android:drawable/ic_signal_cellular_4_4_bar</item>
    <item>@*android:drawable/ic_signal_cellular_4_5_bar</item>
    <item>@*android:drawable/ic_signal_cellular_5_5_bar</item>
    <item>@*android:drawable/ic_signal_location</item>
    <item>@*android:drawable/ic_wifi_signal_0</item>
    <item>@*android:drawable/ic_wifi_signal_1</item>
    <item>@*android:drawable/ic_wifi_signal_2</item>
    <item>@*android:drawable/ic_wifi_signal_3</item>
    <item>@*android:drawable/ic_wifi_signal_4</item>
    <item>@*android:drawable/perm_group_activity_recognition</item>
    <item>@*android:drawable/perm_group_aural</item>
    <item>@*android:drawable/perm_group_calendar</item>
    <item>@*android:drawable/perm_group_call_log</item>
    <item>@*android:drawable/perm_group_camera</item>
    <item>@*android:drawable/perm_group_contacts</item>
    <item>@*android:drawable/perm_group_location</item>
    <item>@*android:drawable/perm_group_microphone</item>
    <item>@*android:drawable/perm_group_phone_calls</item>
    <item>@*android:drawable/perm_group_sensors</item>
    <item>@*android:drawable/perm_group_sms</item>
    <item>@*android:drawable/perm_group_storage</item>
    <item>@*android:drawable/perm_group_visual</item>
  </array>
</resources>
+0 −72
Original line number Diff line number Diff line
<!--
   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.
-->
<resources>
  <!-- overlayable_icons references all of the drawables in this package
       that are being overlayed by resource overlays. If you remove/rename
       any of these resources, you must also change the resource overlay icons.-->
  <array name="overlayable_icons">
    <item>@drawable/ic_alarm</item>
    <item>@drawable/ic_alarm_dim</item>
    <item>@drawable/ic_arrow_back</item>
    <item>@drawable/ic_bluetooth_connected</item>
    <item>@drawable/ic_brightness_thumb</item>
    <item>@drawable/ic_camera</item>
    <item>@drawable/ic_cast</item>
    <item>@drawable/ic_cast_connected</item>
    <item>@drawable/ic_close_white</item>
    <item>@drawable/ic_data_saver</item>
    <item>@drawable/ic_data_saver_off</item>
    <item>@drawable/ic_drag_handle</item>
    <item>@drawable/ic_headset</item>
    <item>@drawable/ic_headset_mic</item>
    <item>@drawable/ic_hotspot</item>
    <item>@drawable/ic_info</item>
    <item>@drawable/ic_info_outline</item>
    <item>@drawable/ic_invert_colors</item>
    <item>@drawable/ic_location</item>
    <item>@drawable/ic_lockscreen_ime</item>
    <item>@drawable/ic_notifications_alert</item>
    <item>@drawable/ic_notifications_silence</item>
    <item>@drawable/ic_power_low</item>
    <item>@drawable/ic_power_saver</item>
    <item>@drawable/ic_qs_bluetooth_connecting</item>
    <item>@drawable/ic_qs_cancel</item>
    <item>@drawable/ic_qs_no_sim</item>
    <item>@drawable/ic_qs_wifi_0</item>
    <item>@drawable/ic_qs_wifi_1</item>
    <item>@drawable/ic_qs_wifi_2</item>
    <item>@drawable/ic_qs_wifi_3</item>
    <item>@drawable/ic_qs_wifi_4</item>
    <item>@drawable/ic_qs_wifi_disconnected</item>
    <item>@drawable/ic_screenshot_delete</item>
    <item>@drawable/ic_settings</item>
    <item>@drawable/ic_swap_vert</item>
    <item>@drawable/ic_tune_black_16dp</item>
    <item>@drawable/ic_volume_alarm_mute</item>
    <item>@drawable/ic_volume_bt_sco</item>
    <item>@drawable/ic_volume_media</item>
    <item>@drawable/ic_volume_media_mute</item>
    <item>@drawable/ic_volume_odi_captions</item>
    <item>@drawable/ic_volume_odi_captions_disabled</item>
    <item>@drawable/ic_volume_ringer</item>
    <item>@drawable/ic_volume_ringer_mute</item>
    <item>@drawable/ic_volume_ringer_vibrate</item>
    <item>@drawable/ic_volume_voice</item>
    <item>@drawable/stat_sys_managed_profile_status</item>
    <item>@drawable/stat_sys_mic_none</item>
    <item>@drawable/stat_sys_vpn_ic</item>
  </array>
</resources>
+37 −0
Original line number Diff line number Diff line
// 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.

android_test {
    name: "OverlayTests",

    certificate: "platform",

    srcs: ["src/**/*.java"],

    libs: [
        "android.test.runner",
        "android.test.base",
    ],

    platform_apis: true,

    static_libs: [
        "androidx.test.rules",
        "androidx.test.espresso.core",
        "mockito-target-minus-junit4",
        "truth-prebuilt",
    ],

    dxflags: ["--multi-dex"],
}
+37 −0
Original line number Diff line number Diff line
<?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
  -->

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.android.overlays">

    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
    <uses-permission android:name="android.permission.MANAGE_USERS" />
    <uses-permission android:name="android.permission.MANAGE_NETWORK_POLICY"/>
    <uses-permission android:name="android.permission.SET_TIME_ZONE" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />

    <application>
        <uses-library android:name="android.test.runner" />
    </application>

    <instrumentation android:name="androidx.test.runner.AndroidJUnitRunner"
        android:targetPackage="com.android.systemui"
        android:label="Tests for Overlays">
    </instrumentation>
</manifest>
+29 −0
Original line number Diff line number Diff line
<?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 Tests for Overlays.">
    <target_preparer class="com.android.tradefed.targetprep.TestAppInstallSetup">
        <option name="test-file-name" value="OverlayTests.apk" />
    </target_preparer>

    <option name="test-suite-tag" value="apct" />
    <option name="test-tag" value="OverlayTests" />
    <test class="com.android.tradefed.testtype.AndroidJUnitTest" >
        <option name="package" value="com.android.overlays" />
        <option name="runner" value="androidx.test.runner.AndroidJUnitRunner" />
        <option name="hidden-api-checks" value="false"/>
    </test>
</configuration>
Loading