| * Copyright (C) 2015 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. |
| |
| |
| INTRODUCTION |
| |
| The Android theme tests ensure that the Holo and Material themes have not been |
| modified. They consist of API-specific sets of reference images representing |
| specific themes and widgets that must be identical across devices. To pass the |
| theme tests, a device must be able to generate images that are identical to the |
| reference images. |
| |
| NOTE: Reference images should only be updated by the CTS test maintainers. Any |
| modifications to the reference images will invalidate the test results. |
| |
| |
| INSTRUCTIONS |
| |
| I. Generating reference images (CTS maintainers only) |
| |
| Reference images are typically only generated for new API revisions. To |
| generate a new set of reference images, do the following: |
| |
| 1. Connect one device for each DPI bucket (ldpi, xxxhdpi, etc.) that you wish |
| to generate references images for. Confirm that all devices are connected |
| with: |
| |
| adb devices |
| |
| 2. Image generation occurs on all devices in parallel. Resulting sets of |
| reference images are saved in assets/<api>/<dpi>.zip and will overwrite |
| any existing sets. Image generation may be started using: |
| |
| .cts/hostsidetests/theme/generate_images.sh |
| |
| A complete collection of reference images for a given API revision must include |
| a set for each possible DPI bucket (tvdpi, xxhdpi, etc.) that may be tested. |
| |
| |
| II. Building theme tests |
| |
| 1. If you have not already built the CTS tests, run an initial make: |
| |
| make cts -j32 |
| |
| 2. Subsequent changes to the theme tests, including changes to the reference |
| images, may be built using mmm: |
| |
| mmm cts/hostsidetests/theme -j32 |
| |
| |
| III. Running theme tests |
| |
| 1. Connect the device that you wish to test. Confirm that is is connected with: |
| |
| adb devices |
| |
| 2. Run the theme tests using cts-tradefed: |
| |
| cts-tradefed run cts -c android.theme.cts.ThemeHostTest |
| |
| 3. Wait for the tests to complete. This should take less than five minutes. |