Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1d570029 authored by Yifan Hong's avatar Yifan Hong
Browse files

Fix test for array size orders.

Test: hidl_test
Test: hidl_test_java
Bug: 31438033
Change-Id: I100d7ed6dac24005fa1a5c46a3e09aa062d957f7
parent 688bb1e2
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -34,6 +34,12 @@ interface IBaz extends IBase {
        blah = goober
    };

    typedef int32_t[3] ThreeInts;
    struct T {
        ThreeInts[5]  matrix5x3;
        int32_t[3][5] matrix3x5;
    };

    @Fragile @NoReally(very="yes", array={"a","b","c"})
    oneway doThis(float param);

+13 −13
Original line number Diff line number Diff line
@@ -156,20 +156,20 @@ public:
    Return<void> foo20(const hidl_vec<IPointer::Sam const*>&) override {
        return Void();
    }
    Return<void> foo21(hidl_array<IPointer::Ada, 3, 2, 1> const* a_array_ptr) override {
        const hidl_array<IPointer::Ada, 3, 2, 1>& a_array = *a_array_ptr;
    Return<void> foo21(hidl_array<IPointer::Ada, 1, 2, 3> const* a_array_ptr) override {
        const hidl_array<IPointer::Ada, 1, 2, 3>& a_array = *a_array_ptr;
        PUSH_ERROR_IF(a_array[0][0][0].s_ptr->data != 500);
        for(size_t i = 0; i < 3; i++)
        for(size_t i = 0; i < 1; i++)
            for(size_t j = 0; j < 2; j++)
                for(size_t k = 0; k < 1; k++)
                for(size_t k = 0; k < 3; k++)
                    PUSH_ERROR_IF(a_array[i][j][k].s_ptr != a_array[0][0][0].s_ptr);
        return Void();
    }
    Return<void> foo22(const hidl_array<IPointer::Ada const*, 3, 2, 1>& a_ptr_array) override {
    Return<void> foo22(const hidl_array<IPointer::Ada const*, 1, 2, 3>& a_ptr_array) override {
        PUSH_ERROR_IF(a_ptr_array[0][0][0]->s_ptr->data != 500);
        for(size_t i = 0; i < 3; i++)
        for(size_t i = 0; i < 1; i++)
            for(size_t j = 0; j < 2; j++)
                for(size_t k = 0; k < 1; k++)
                for(size_t k = 0; k < 3; k++)
                    PUSH_ERROR_IF(a_ptr_array[i][j][k] != a_ptr_array[0][0][0]);
        return Void();
    }
@@ -315,19 +315,19 @@ public:
        return Void();
    }
    Return<void> bar21(bar21_cb _cb) override {
        hidl_array<IPointer::Ada, 3, 2, 1> a_array;
        for(size_t i = 0; i < 3; i++)
        hidl_array<IPointer::Ada, 1, 2, 3> a_array;
        for(size_t i = 0; i < 1; i++)
            for(size_t j = 0; j < 2; j++)
                for(size_t k = 0; k < 1; k++)
                for(size_t k = 0; k < 3; k++)
                    a_array[i][j][k] = *a;
        _cb(&a_array);
        return Void();
    }
    Return<void> bar22(bar22_cb _cb) override {
        hidl_array<const IPointer::Ada *, 3, 2, 1> a_ptr_array;
        for(size_t i = 0; i < 3; i++)
        hidl_array<const IPointer::Ada *, 1, 2, 3> a_ptr_array;
        for(size_t i = 0; i < 1; i++)
            for(size_t j = 0; j < 2; j++)
                for(size_t k = 0; k < 1; k++)
                for(size_t k = 0; k < 3; k++)
                    a_ptr_array[i][j][k] = a;
        _cb(a_ptr_array);
        return Void();