roc-streaming / roc-toolkit

Real-time audio streaming over the network.
https://roc-streaming.org
Mozilla Public License 2.0
1.03k stars 205 forks source link

Percent-encoding test fails on Android #516

Open gavv opened 1 year ago

gavv commented 1 year ago

TEST(pct, unicode_symbols) from src/tests/roc_address/test_pct.cpp fails when it runs on x86_64 android emulator on macOS. It's a simple test that checks how percent encoder and decoder work for unicode symbols. It works on all other platforms.

It's not yet cleat if this is a bug in code or test itself. For now the test is disabled on Android. We should fix either the code or the test and re-enable it.

To build roc for android, see user cookbok. To run tests in emulator, see scripts/android_emu/run.sh script.

+ adb push bin/x86_64-linux-android29/roc-test-address /data/local/tmp/roc-test-address
+ adb shell echo

+ python3 scripts/scons_helpers/run-with-timeout.py 300 adb shell LD_LIBRARY_PATH=/data/local/tmp/lib '/data/local/tmp/roc-test-address -v'
+ error=1
+ tail -n 800 tests/x86_64-linux-android29/roc-test-address.log
TEST(socket_addr_parse, bad_host_port) - 0 ms
TEST(socket_addr_parse, host_port_ipv6) - 0 ms
TEST(socket_addr_parse, host_port_ipv4) - 0 ms
TEST(socket_addr, clear) - 1 ms
TEST(socket_addr, multicast_ipv6) - 1 ms
TEST(socket_addr, multicast_ipv4) - 0 ms
TEST(socket_addr, eq_ipv6) - 0 ms
TEST(socket_addr, eq_ipv4) - 0 ms
TEST(socket_addr, get_ipv6) - 0 ms
TEST(socket_addr, get_ipv4) - 0 ms
TEST(socket_addr, set_auto) - 0 ms
TEST(socket_addr, set_ipv6) - 0 ms
TEST(socket_addr, set_ipv4) - 0 ms
TEST(socket_addr, empty) - 0 ms
TEST(pct, invalid_input) - 0 ms
TEST(pct, small_buffer) - 0 ms
TEST(pct, case_sensitivity) - 0 ms
TEST(pct, unicode_symbols)
src/tests/roc_address/test_pct.cpp:179: error: Failure in TEST(pct, unicode_symbols)
    expected <%E2%99%A5>
    but was  <�%99%A5>
    difference starts at position 0 at: <          �%99%A5   >
                                                   ^

 - 0 ms
TEST(pct, path_symbols) - 0 ms
TEST(pct, host_symbols) - 0 ms
TEST(pct, unreserved_symbols) - 0 ms
TEST(io_uri, bad_syntax) - 3 ms
TEST(io_uri, small_buffer) - 0 ms
TEST(io_uri, percent_encoding) - 0 ms
TEST(io_uri, file_compact_specialpath) - 0 ms
TEST(io_uri, file_compact_relpath2) - 2 ms
TEST(io_uri, file_compact_relpath1) - 0 ms
TEST(io_uri, file_compact_abspath) - 0 ms
TEST(io_uri, file_emptyhost_specialpath) - 1 ms
TEST(io_uri, file_emptyhost_abspath) - 1 ms
TEST(io_uri, file_localhost_abspath) - 1 ms
TEST(io_uri, device) - 0 ms
TEST(io_uri, empty) - 1 ms
TEST(endpoint_uri, bad_syntax) - 3 ms
TEST(endpoint_uri, small_buffer) - 0 ms
TEST(endpoint_uri, percent_encoding) - 0 ms
TEST(endpoint_uri, non_empty_path) - 4 ms
TEST(endpoint_uri, service) - 0 ms
TEST(endpoint_uri, omit_port) - 2 ms
TEST(endpoint_uri, is_equal) - 0 ms
TEST(endpoint_uri, assign) - 0 ms
TEST(endpoint_uri, addresses) - 0 ms
TEST(endpoint_uri, protocols) - 2 ms
TEST(endpoint_uri, fields) - 1 ms
TEST(endpoint_uri, empty) - 1 ms

Errors (1 failures, 45 tests, 45 ran, 594 checks, 0 ignored, 0 filtered out, 58 ms)

https://github.com/roc-streaming/roc-toolkit/actions/runs/4344455669/jobs/7587808800