1#!/usr/bin/env python3 2# Copyright (C) 2023 The Android Open Source Project 3# 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License a 7# 8# http://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15 16from python.generators.diff_tests.testing import Path, DataPath, Metric 17from python.generators.diff_tests.testing import Csv, Json, TextProto 18from python.generators.diff_tests.testing import DiffTestBlueprint 19from python.generators.diff_tests.testing import TestSuite 20 21 22class Startup(TestSuite): 23 # Contains tests related to the startup of Android apps. Test that 24 # running in parallel are flagged. 25 def test_android_startup_installd_dex2oat(self): 26 return DiffTestBlueprint( 27 trace=Path('android_startup_installd_dex2oat.py'), 28 query=Metric('android_startup'), 29 out=Path('android_startup_installd_dex2oat.out')) 30 31 def test_android_startup_installd_dex2oat_slow(self): 32 return DiffTestBlueprint( 33 trace=Path('android_startup_installd_dex2oat_slow.py'), 34 query=Metric('android_startup'), 35 out=Path('android_startup_installd_dex2oat_slow.out')) 36 37 # Test that unlocks running in parallel are flagged. 38 def test_android_startup_unlock(self): 39 return DiffTestBlueprint( 40 trace=Path('android_startup_unlock.py'), 41 query=Metric('android_startup'), 42 out=Path('android_startup_unlock.out')) 43 44 def test_ttid_and_ttfd(self): 45 return DiffTestBlueprint( 46 trace=DataPath('api31_startup_warm.perfetto-trace'), 47 query=Metric('android_startup'), 48 out=Path('ttid_and_ttfd.out')) 49