Kazuaki Ishizaki created ARROW-8467: ---------------------------------------
Summary: [C++] Test cases using ArrayFromJSON assume only a little-endian platform Key: ARROW-8467 URL: https://issues.apache.org/jira/browse/ARROW-8467 Project: Apache Arrow Issue Type: Improvement Components: C++ Reporter: Kazuaki Ishizaki Test cases using ArrayFromJSON assumes little endian platform The following test cases seem to assume little-endian platform. TEST_F(TestChunkedArray, View) at https://github.com/apache/arrow/blob/master/cpp/src/arrow/table_test.cc#L175 TEST(TestArrayView, PrimitiveAsFixedSizeBinary) at https://github.com/apache/arrow/blob/master/cpp/src/arrow/array_view_test.cc#L105 TEST(TestArrayView, StructAsStructSimple) at https://github.com/apache/arrow/blob/master/cpp/src/arrow/array_view_test.cc#L126 One of examples is {{PrimitiveAsFixedSizeBinary}}. {code} TEST(TestArrayView, PrimitiveAsFixedSizeBinary) { auto arr = ArrayFromJSON(int32(), "[2020568934, 2054316386, null]"); auto expected = ArrayFromJSON(fixed_size_binary(4), R"(["foox", "barz", null])"); CheckView(arr, expected); CheckView(expected, arr); } {code} The expected strings are represented in binary as follows: {code} "foox" = [0x66 0x6f 0x6f 0x78] "barz" = [0x62 0x61 0x72 0x7a] {code} This test gives a value as raw int32. The current values assume only a little-endian platform as follows to generate the expected binary sequence. {code} 2020568934 = 0x786f6f66 2054316386 = 0x7a726162 {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)