Merge "Apache2 module license."
diff --git a/tests/baz/1.0/Android.mk b/tests/baz/1.0/Android.mk
new file mode 100644
index 0000000..5f669ac
--- /dev/null
+++ b/tests/baz/1.0/Android.mk
@@ -0,0 +1,71 @@
+LOCAL_PATH := $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := android.hardware.tests.baz@1.0
+LOCAL_MODULE_CLASS := SHARED_LIBRARIES
+
+intermediates := $(local-generated-sources-dir)
+
+HIDL := $(HOST_OUT_EXECUTABLES)/hidl-gen$(HOST_EXECUTABLE_SUFFIX)
+
+#
+# Build IBase.hal
+#
+GEN := $(intermediates)/android/hardware/tests/baz/1.0/BaseAll.cpp
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IBase.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+ -Lc++ -randroid.hardware:hardware/interfaces\
+ android.hardware.tests.baz@1.0::$(patsubst %.hal,%,$(notdir $(PRIVATE_DEPS)))
+
+$(GEN): $(LOCAL_PATH)/IBase.hal
+ $(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build IBaz.hal
+#
+GEN := $(intermediates)/android/hardware/tests/baz/1.0/BazAll.cpp
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IBaz.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+ -Lc++ -randroid.hardware:hardware/interfaces\
+ android.hardware.tests.baz@1.0::$(patsubst %.hal,%,$(notdir $(PRIVATE_DEPS)))
+
+$(GEN): $(LOCAL_PATH)/IBaz.hal
+ $(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+#
+# Build IBazCallback.hal
+#
+GEN := $(intermediates)/android/hardware/tests/baz/1.0/BazCallbackAll.cpp
+$(GEN): $(HIDL)
+$(GEN): PRIVATE_HIDL := $(HIDL)
+$(GEN): PRIVATE_DEPS := $(LOCAL_PATH)/IBazCallback.hal
+$(GEN): PRIVATE_OUTPUT_DIR := $(intermediates)
+$(GEN): PRIVATE_CUSTOM_TOOL = \
+ $(PRIVATE_HIDL) -o $(PRIVATE_OUTPUT_DIR) \
+ -Lc++ -randroid.hardware:hardware/interfaces\
+ android.hardware.tests.baz@1.0::$(patsubst %.hal,%,$(notdir $(PRIVATE_DEPS)))
+
+$(GEN): $(LOCAL_PATH)/IBazCallback.hal
+ $(transform-generated-source)
+LOCAL_GENERATED_SOURCES += $(GEN)
+
+LOCAL_EXPORT_C_INCLUDE_DIRS := $(intermediates)
+LOCAL_SHARED_LIBRARIES := \
+ libhidl \
+ libhwbinder \
+ libutils \
+
+LOCAL_MULTILIB := both
+LOCAL_COMPATIBILITY_SUITE := vts
+-include test/vts/tools/build/Android.packaging_sharedlib.mk
+include $(BUILD_SHARED_LIBRARY)
diff --git a/tests/baz/1.0/IBase.hal b/tests/baz/1.0/IBase.hal
new file mode 100644
index 0000000..51251c1
--- /dev/null
+++ b/tests/baz/1.0/IBase.hal
@@ -0,0 +1,31 @@
+package android.hardware.tests.baz@1.0;
+
+interface IBase {
+ enum SomeBaseEnum {
+ grrr = 1,
+ };
+
+ struct Foo {
+ struct Bar {
+ float z;
+ string s;
+ };
+
+ enum FooEnum : int8_t {
+ first = 1,
+ second = 2,
+ };
+
+ int32_t x;
+ vec<Bar> aaa;
+ Bar y;
+ };
+
+ someBaseMethod();
+
+ someBoolMethod(bool x) generates (bool y);
+ someBoolArrayMethod(bool[3] x) generates (bool[4] y);
+ someBoolVectorMethod(vec<bool> x) generates (vec<bool> y);
+
+ someOtherBaseMethod(Foo foo) generates (Foo result);
+};
diff --git a/tests/baz/1.0/IBaz.hal b/tests/baz/1.0/IBaz.hal
new file mode 100644
index 0000000..a6230b9
--- /dev/null
+++ b/tests/baz/1.0/IBaz.hal
@@ -0,0 +1,36 @@
+package android.hardware.tests.baz@1.0;
+
+import IBase;
+import IBazCallback;
+
+interface IBaz extends IBase {
+
+ enum SomeOtherEnum : uint8_t {
+ bar = 66
+ };
+
+ typedef SomeOtherEnum thisIsAnAlias;
+ typedef IBaz anIBazByAnyOtherName;
+
+ enum SomeEnum : SomeOtherEnum {
+ quux = 33,
+ goober = 192,
+ blah = goober
+ };
+
+ @Fragile @NoReally(very="yes", array={"a","b","c"})
+ oneway doThis(float param);
+
+ doThatAndReturnSomething(int64_t param) generates (int32_t result);
+ doQuiteABit(int32_t a, int64_t b, float c, double d) generates (double something);
+ doSomethingElse(int32_t[15] param) generates (int32_t[32] something);
+ doStuffAndReturnAString() generates (string something);
+ mapThisVector(vec<int32_t> param) generates (vec<int32_t> something);
+ callMe(IBazCallback cb);
+ useAnEnum(SomeEnum zzz) generates (SomeEnum kkk);
+
+ haveSomeStrings(string[3] array) generates (string[2] result);
+ haveAStringVec(vec<string> vector) generates (vec<string> result);
+
+ returnABunchOfStrings() generates (string a, string b, string c);
+};
diff --git a/tests/baz/1.0/IBazCallback.hal b/tests/baz/1.0/IBazCallback.hal
new file mode 100644
index 0000000..858e8c9
--- /dev/null
+++ b/tests/baz/1.0/IBazCallback.hal
@@ -0,0 +1,5 @@
+package android.hardware.tests.baz@1.0;
+
+interface IBazCallback {
+ heyItsMe(IBazCallback cb);
+};