mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 16:09:42 +00:00
Merge "Add test for type resolution."
am: 5835d9ea59
Change-Id: I5e267d4f2e05c1441d5c5edcb5d635bc9b7b79b0
This commit is contained in:
@@ -5,13 +5,19 @@ genrule {
|
|||||||
tools: ["hidl-gen"],
|
tools: ["hidl-gen"],
|
||||||
cmd: "$(location hidl-gen) -o $(genDir) -Lc++ -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.bar@1.0",
|
cmd: "$(location hidl-gen) -o $(genDir) -Lc++ -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.bar@1.0",
|
||||||
srcs: [
|
srcs: [
|
||||||
|
"types.hal",
|
||||||
"IBar.hal",
|
"IBar.hal",
|
||||||
"IComplicated.hal",
|
"IComplicated.hal",
|
||||||
|
"IFooCallback.hal",
|
||||||
|
"IImportRules.hal",
|
||||||
"IImportTypes.hal",
|
"IImportTypes.hal",
|
||||||
],
|
],
|
||||||
out: [
|
out: [
|
||||||
|
"android/hardware/tests/bar/1.0/types.cpp",
|
||||||
"android/hardware/tests/bar/1.0/BarAll.cpp",
|
"android/hardware/tests/bar/1.0/BarAll.cpp",
|
||||||
"android/hardware/tests/bar/1.0/ComplicatedAll.cpp",
|
"android/hardware/tests/bar/1.0/ComplicatedAll.cpp",
|
||||||
|
"android/hardware/tests/bar/1.0/FooCallbackAll.cpp",
|
||||||
|
"android/hardware/tests/bar/1.0/ImportRulesAll.cpp",
|
||||||
"android/hardware/tests/bar/1.0/ImportTypesAll.cpp",
|
"android/hardware/tests/bar/1.0/ImportTypesAll.cpp",
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
@@ -21,11 +27,15 @@ genrule {
|
|||||||
tools: ["hidl-gen"],
|
tools: ["hidl-gen"],
|
||||||
cmd: "$(location hidl-gen) -o $(genDir) -Lc++ -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.bar@1.0",
|
cmd: "$(location hidl-gen) -o $(genDir) -Lc++ -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport android.hardware.tests.bar@1.0",
|
||||||
srcs: [
|
srcs: [
|
||||||
|
"types.hal",
|
||||||
"IBar.hal",
|
"IBar.hal",
|
||||||
"IComplicated.hal",
|
"IComplicated.hal",
|
||||||
|
"IFooCallback.hal",
|
||||||
|
"IImportRules.hal",
|
||||||
"IImportTypes.hal",
|
"IImportTypes.hal",
|
||||||
],
|
],
|
||||||
out: [
|
out: [
|
||||||
|
"android/hardware/tests/bar/1.0/types.h",
|
||||||
"android/hardware/tests/bar/1.0/IBar.h",
|
"android/hardware/tests/bar/1.0/IBar.h",
|
||||||
"android/hardware/tests/bar/1.0/IHwBar.h",
|
"android/hardware/tests/bar/1.0/IHwBar.h",
|
||||||
"android/hardware/tests/bar/1.0/BnHwBar.h",
|
"android/hardware/tests/bar/1.0/BnHwBar.h",
|
||||||
@@ -36,6 +46,16 @@ genrule {
|
|||||||
"android/hardware/tests/bar/1.0/BnHwComplicated.h",
|
"android/hardware/tests/bar/1.0/BnHwComplicated.h",
|
||||||
"android/hardware/tests/bar/1.0/BpHwComplicated.h",
|
"android/hardware/tests/bar/1.0/BpHwComplicated.h",
|
||||||
"android/hardware/tests/bar/1.0/BsComplicated.h",
|
"android/hardware/tests/bar/1.0/BsComplicated.h",
|
||||||
|
"android/hardware/tests/bar/1.0/IFooCallback.h",
|
||||||
|
"android/hardware/tests/bar/1.0/IHwFooCallback.h",
|
||||||
|
"android/hardware/tests/bar/1.0/BnHwFooCallback.h",
|
||||||
|
"android/hardware/tests/bar/1.0/BpHwFooCallback.h",
|
||||||
|
"android/hardware/tests/bar/1.0/BsFooCallback.h",
|
||||||
|
"android/hardware/tests/bar/1.0/IImportRules.h",
|
||||||
|
"android/hardware/tests/bar/1.0/IHwImportRules.h",
|
||||||
|
"android/hardware/tests/bar/1.0/BnHwImportRules.h",
|
||||||
|
"android/hardware/tests/bar/1.0/BpHwImportRules.h",
|
||||||
|
"android/hardware/tests/bar/1.0/BsImportRules.h",
|
||||||
"android/hardware/tests/bar/1.0/IImportTypes.h",
|
"android/hardware/tests/bar/1.0/IImportTypes.h",
|
||||||
"android/hardware/tests/bar/1.0/IHwImportTypes.h",
|
"android/hardware/tests/bar/1.0/IHwImportTypes.h",
|
||||||
"android/hardware/tests/bar/1.0/BnHwImportTypes.h",
|
"android/hardware/tests/bar/1.0/BnHwImportTypes.h",
|
||||||
|
|||||||
20
tests/bar/1.0/IFooCallback.hal
Normal file
20
tests/bar/1.0/IFooCallback.hal
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2016 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package android.hardware.tests.bar@1.0;
|
||||||
|
|
||||||
|
interface IFooCallback {
|
||||||
|
};
|
||||||
47
tests/bar/1.0/IImportRules.hal
Normal file
47
tests/bar/1.0/IImportRules.hal
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2016 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package android.hardware.tests.bar@1.0;
|
||||||
|
|
||||||
|
import android.hardware.tests.foo@1.0;
|
||||||
|
|
||||||
|
interface IImportRules {
|
||||||
|
// Note that there is a android.hardware.tests.foo@1.0::Outer in types.hal
|
||||||
|
struct Outer {
|
||||||
|
struct Inner {
|
||||||
|
int32_t data;
|
||||||
|
};
|
||||||
|
string data;
|
||||||
|
};
|
||||||
|
|
||||||
|
rule0a(Outer o); // should be resolved to Outer above
|
||||||
|
rule0a1(IImportRules.Outer o); // should be resolved to Outer above
|
||||||
|
rule0b(@1.0::IImportRules.Outer o);
|
||||||
|
rule0c(android.hardware.tests.foo@1.0::Outer o);
|
||||||
|
rule0d(@1.0::Outer o); // android.hardware.tests.foo@1.0::Outer
|
||||||
|
rule0e(Outer.Inner o); // should be resolved to Outer above
|
||||||
|
rule0f(@1.0::IImportRules.Outer.Inner o);
|
||||||
|
rule0g(android.hardware.tests.foo@1.0::Outer.Inner o);
|
||||||
|
rule0h(@1.0::Outer.Inner o); // android.hardware.tests.foo@1.0::Outer.Inner
|
||||||
|
|
||||||
|
rule1a(Def abc); // should be resolved to Def in types.hal in this package
|
||||||
|
rule1b(android.hardware.tests.foo@1.0::Def abc);
|
||||||
|
|
||||||
|
rule2a(Unrelated related);
|
||||||
|
|
||||||
|
// android.hardware.tests.foo@1.0::IFooCallback, since bar@1.0::IFooCallback is not imported.
|
||||||
|
rule2b(IFooCallback fooCallback);
|
||||||
|
};
|
||||||
21
tests/bar/1.0/types.hal
Normal file
21
tests/bar/1.0/types.hal
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2016 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package android.hardware.tests.bar@1.0;
|
||||||
|
|
||||||
|
struct Def {
|
||||||
|
vec<string> vs;
|
||||||
|
};
|
||||||
@@ -22,6 +22,10 @@ struct Abc {
|
|||||||
handle z;
|
handle z;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct Def {
|
||||||
|
string g;
|
||||||
|
};
|
||||||
|
|
||||||
struct Outer {
|
struct Outer {
|
||||||
struct Inner {
|
struct Inner {
|
||||||
struct Deep {
|
struct Deep {
|
||||||
|
|||||||
Reference in New Issue
Block a user