Adds test cases to stress marshaling of primitive array types and am: aaa67596df

am: 6445699dde

Change-Id: Id4d405af8ac5efee1ca62504ea700b96937020cd
This commit is contained in:
Andreas Huber 2017-11-01 00:03:43 +00:00 committed by android-build-merger
commit 149ecdb239
3 changed files with 73 additions and 0 deletions

View file

@ -77,6 +77,30 @@ interface IBase {
typedef bitfield<BitField> Mask;
typedef uint8_t[128] ByteOneDim;
typedef uint8_t[8][128] ByteTwoDim;
typedef uint8_t[8][16][128] ByteThreeDim;
typedef bool[128] BooleanOneDim;
typedef bool[8][128] BooleanTwoDim;
typedef bool[8][16][128] BooleanThreeDim;
typedef double[128] DoubleOneDim;
typedef double[8][128] DoubleTwoDim;
typedef double[8][16][128] DoubleThreeDim;
struct LotsOfPrimitiveArrays {
ByteOneDim byte1;
ByteTwoDim byte2;
ByteThreeDim byte3;
BooleanOneDim boolean1;
BooleanTwoDim boolean2;
BooleanThreeDim boolean3;
DoubleOneDim double1;
DoubleTwoDim double2;
DoubleThreeDim double3;
};
someBaseMethod();
someBoolMethod(bool x) generates (bool y);
@ -97,4 +121,9 @@ interface IBase {
takeAMask(BitField bf, bitfield<BitField> first, MyMask second, Mask third)
generates (BitField out, uint8_t f, uint8_t s, uint8_t t);
testArrays(LotsOfPrimitiveArrays in) generates (LotsOfPrimitiveArrays out);
testByteVecs(vec<ByteOneDim> in) generates (vec<ByteOneDim> out);
testBooleanVecs(vec<BooleanOneDim> in) generates (vec<BooleanOneDim> out);
testDoubleVecs(vec<DoubleOneDim> in) generates (vec<DoubleOneDim> out);
};

View file

@ -199,6 +199,34 @@ Return<void> Baz::takeAMask(IBase::BitField bf,
return Void();
}
Return<void> Baz::testArrays(
const IBase::LotsOfPrimitiveArrays &in,
testArrays_cb _hidl_cb) {
_hidl_cb(in);
return Void();
}
Return<void> Baz::testByteVecs(
const hidl_vec<IBase::ByteOneDim> &in,
testByteVecs_cb _hidl_cb) {
_hidl_cb(in);
return Void();
}
Return<void> Baz::testBooleanVecs(
const hidl_vec<IBase::BooleanOneDim> &in,
testBooleanVecs_cb _hidl_cb) {
_hidl_cb(in);
return Void();
}
Return<void> Baz::testDoubleVecs(
const hidl_vec<IBase::DoubleOneDim> &in,
testDoubleVecs_cb _hidl_cb) {
_hidl_cb(in);
return Void();
}
// Methods from ::android::hardware::tests::baz::V1_0::IBaz follow.
Return<void> Baz::doThis(float param) {

View file

@ -53,6 +53,22 @@ struct Baz : public IBaz {
uint8_t third,
takeAMask_cb _hidl_cb) override;
Return<void> testArrays(
const IBase::LotsOfPrimitiveArrays &in,
testArrays_cb _hidl_cb) override;
Return<void> testByteVecs(
const hidl_vec<IBase::ByteOneDim> &in,
testByteVecs_cb _hidl_cb) override;
Return<void> testBooleanVecs(
const hidl_vec<IBase::BooleanOneDim> &in,
testBooleanVecs_cb _hidl_cb) override;
Return<void> testDoubleVecs(
const hidl_vec<IBase::DoubleOneDim> &in,
testDoubleVecs_cb _hidl_cb) override;
// Methods from ::android::hardware::tests::baz::V1_0::IBaz follow.
Return<void> doThis(float param) override;
Return<int32_t> doThatAndReturnSomething(int64_t param) override;