// Copyright 2016 Google Inc. All rights reserved. // // 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. package cc import ( "path/filepath" "strconv" "strings" "github.com/google/blueprint/proptools" "android/soong/android" "android/soong/tradefed" ) // TestLinkerProperties properties to be registered via the linker type TestLinkerProperties struct { // if set, build against the gtest library. Defaults to true. Gtest *bool // if set, use the isolated gtest runner. Defaults to true if gtest is also true and the arch is Windows, false // otherwise. Isolated *bool } // TestInstallerProperties properties to be registered via the installer type TestInstallerProperties struct { // list of compatibility suites (for example "cts", "vts") that the module should be installed into. Test_suites []string `android:"arch_variant"` } // Test option struct. type TestOptions struct { android.CommonTestOptions // The UID that you want to run the test as on a device. Run_test_as *string // A list of free-formed strings without spaces that categorize the test. Test_suite_tag []string // a list of extra test configuration files that should be installed with the module. Extra_test_configs []string `android:"path,arch_variant"` // Add ShippingApiLevelModuleController to auto generated test config. If the device properties // for the shipping api level is less than the min_shipping_api_level, skip this module. Min_shipping_api_level *int64 // Add ShippingApiLevelModuleController to auto generated test config. If any of the device // shipping api level and vendor api level properties are less than the // vsr_min_shipping_api_level, skip this module. // As this includes the shipping api level check, it is not allowed to define // min_shipping_api_level at the same time with this property. Vsr_min_shipping_api_level *int64 // Add MinApiLevelModuleController with ro.vndk.version property. If ro.vndk.version has an // integer value and the value is less than the min_vndk_version, skip this module. Min_vndk_version *int64 // Extra