| // Copyright (C) 2018 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. |
| |
| // [START declaration] |
| syntax = "proto3"; |
| package com_android_cts_releaseparser; |
| // [END declaration] |
| |
| // [START java_declaration] |
| option java_package = "com.android.cts.releaseparser"; |
| option java_outer_classname = "ReleaseProto"; |
| // [END java_declaration] |
| |
| // [START messages] |
| message Option { |
| string name = 1; |
| string key = 2; |
| string value =3; |
| } |
| |
| message TestModuleConfig { |
| string module_name = 1; |
| string component = 2; |
| string description = 3; |
| repeated Option options = 4; |
| |
| message TargetPreparer { |
| string test_class = 1; |
| repeated Option options = 2; |
| } |
| repeated TargetPreparer target_preparers = 5; |
| repeated string test_file_names = 6; |
| |
| message TestClass { |
| string test_class = 1; |
| string package = 2; |
| repeated Option options = 3; |
| } |
| repeated TestClass test_classes = 7; |
| repeated string test_jars = 8; |
| } |
| |
| // An entry in a release |
| message Entry { |
| // Name |
| string name = 1; |
| |
| enum EntryType { |
| FOLDER = 0; |
| FILE = 1; |
| CONFIG = 2; |
| JAR = 3; |
| APK = 4; |
| EXE = 5; |
| SO = 6; |
| } |
| // Type |
| EntryType type = 2; |
| |
| // Size |
| int64 size = 3; |
| // Content ID |
| string content_id = 4; |
| // Parent folder |
| string parent_folder = 5; |
| // Relative path |
| string relative_path = 6; |
| |
| // TestModule.config message |
| TestModuleConfig test_module_config = 7; |
| } |
| |
| message ReleaseContent { |
| // Name |
| string name = 1; |
| // Version |
| string version = 2; |
| // Build Number |
| string build_number = 3; |
| // Content ID |
| string content_id = 4; |
| string fullname = 5; |
| string target_arch = 6; |
| string test_suite_tradefed = 7; |
| // File Entries |
| map<string, Entry> entries = 8; |
| repeated string known_failures = 9; |
| } |
| |
| message Annotation { |
| int32 visibility = 1; |
| string type = 2; |
| |
| message Element { |
| string name = 1; |
| string value = 2; |
| } |
| repeated Element elements = 3; |
| } |
| |
| enum TestClassType { |
| UNKNOWN = 0; |
| JUNIT3 = 1; |
| JUNIT4 = 2; |
| PARAMETERIZED = 3; |
| JAVAHOST = 4; |
| } |
| |
| message TestSuite { |
| string name = 1; |
| // Version |
| string version = 2; |
| // Build Number |
| string build_number = 3; |
| // Content ID |
| string content_id = 4; |
| |
| enum TestType { |
| UNKNOWN = 0; |
| ANDROIDJUNIT = 1; |
| JAVAHOST = 2; |
| GTEST = 3; |
| LIBCORE = 4; |
| DALVIK = 5; |
| DEQP = 6; |
| } |
| |
| message Module { |
| string name = 1; |
| string config_file = 2; |
| TestType test_type = 3; |
| string test_class = 4; |
| |
| message Package { |
| string name = 1; |
| string package_file = 2; |
| string content_id = 3; |
| string op_codes = 4; |
| |
| message Class { |
| string name = 1; |
| string type = 2; |
| string super_class = 3; |
| string interface = 4; |
| TestClassType test_class_type = 5; |
| repeated Annotation annotations = 6; |
| |
| message Method { |
| string defining_class = 1; |
| string name = 2; |
| string parameters = 3; |
| string return_type = 4; |
| int32 access_flags = 5; |
| string known_failure_filter = 6; |
| repeated Annotation annotations = 7; |
| } |
| repeated Method methods = 7; |
| |
| message Field { |
| string defining_class = 1; |
| string name = 2; |
| string type = 3; |
| int32 access_flags = 4; |
| string initial_value = 5; |
| repeated Annotation annotations = 6; |
| } |
| repeated Field fields = 8; |
| } |
| repeated Class classes = 5; |
| } |
| repeated Package packages = 5; |
| } |
| repeated Module modules = 5; |
| } |
| |
| // [END messages] |