Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

replace for loops in QPL tests with std algorithms #6

Open
wants to merge 10 commits into
base: develop
Choose a base branch
from

Conversation

fwph
Copy link

@fwph fwph commented Jul 19, 2024

Description

The code changes in this PR were generated automatically by the Permanence AI Coder and reviewed by myself. This code improvement PR applies a modernization pass to algorithmic unit tests in QPL to replace several instances of for loops with equivalent uses of std::copy, std::copy_n, std::fill, std::fill_n, and std::transform. The goal is to apply gradual modernization transformations to the C++ code in QPL as part of ongoing modernization efforts.

Checklist

Full test run summary shows six expected test failures:

[  FAILED  ] 6 tests, listed below:
[  FAILED  ] ta_c_api_deflate_stateful.dynamic_default_verify
[  FAILED  ] ta_c_api_deflate_stateful.dynamic_high_verify
[  FAILED  ] ta_c_api_deflate_stateful.fixed_default_verify
[  FAILED  ] ta_c_api_deflate_stateful.fixed_high_verify
[  FAILED  ] ta_c_api_deflate_stateful.static_default_verify
[  FAILED  ] ta_c_api_deflate_stateful.static_high_verify

Explicit test run of ta_unit* tests show all passing:

./qpl_install/bin/tests --dataset=../qpl//tools/testdata/ --gtest_filter=ta_unit*
Tests seed = 1721404112
Note: Google Test filter = ta_unit*
[==========] Running 47 tests from 42 test suites.
[----------] Global test environment set-up.
[----------] 1 test from ta_unit_api_qplc_bit_aggregates_8u
[ RUN      ] ta_unit_api_qplc_bit_aggregates_8u.base
[       OK ] ta_unit_api_qplc_bit_aggregates_8u.base (0 ms)
[----------] 1 test from ta_unit_api_qplc_bit_aggregates_8u (1 ms total)

[----------] 1 test from ta_unit_api_qplc_aggregates_8u
[ RUN      ] ta_unit_api_qplc_aggregates_8u.base
[       OK ] ta_unit_api_qplc_aggregates_8u.base (1 ms)
[----------] 1 test from ta_unit_api_qplc_aggregates_8u (1 ms total)

[----------] 1 test from ta_unit_api_qplc_aggregates_16u
[ RUN      ] ta_unit_api_qplc_aggregates_16u.base
[       OK ] ta_unit_api_qplc_aggregates_16u.base (1 ms)
[----------] 1 test from ta_unit_api_qplc_aggregates_16u (1 ms total)

[----------] 1 test from ta_unit_api_qplc_aggregates_32u
[ RUN      ] ta_unit_api_qplc_aggregates_32u.base
[       OK ] ta_unit_api_qplc_aggregates_32u.base (0 ms)
[----------] 1 test from ta_unit_api_qplc_aggregates_32u (0 ms total)

[----------] 1 test from ta_unit_api_bit_writer_t
[ RUN      ] ta_unit_api_bit_writer_t.written_size
[       OK ] ta_unit_api_bit_writer_t.written_size (0 ms)
[----------] 1 test from ta_unit_api_bit_writer_t (0 ms total)

[----------] 1 test from ta_unit_api_deflate_histogramm
[ RUN      ] ta_unit_api_deflate_histogramm.offset_index_calculation
[       OK ] ta_unit_api_deflate_histogramm.offset_index_calculation (0 ms)
[----------] 1 test from ta_unit_api_deflate_histogramm (0 ms total)

[----------] 1 test from ta_unit_api_qplc_deflate_slow_icf
[ RUN      ] ta_unit_api_qplc_deflate_slow_icf.base
[       OK ] ta_unit_api_qplc_deflate_slow_icf.base (2 ms)
[----------] 1 test from ta_unit_api_qplc_deflate_slow_icf (2 ms total)

[----------] 1 test from ta_unit_api_qplc_expand_8u
[ RUN      ] ta_unit_api_qplc_expand_8u.base
[       OK ] ta_unit_api_qplc_expand_8u.base (0 ms)
[----------] 1 test from ta_unit_api_qplc_expand_8u (0 ms total)

[----------] 1 test from ta_unit_api_qplc_expand_16u
[ RUN      ] ta_unit_api_qplc_expand_16u.base
[       OK ] ta_unit_api_qplc_expand_16u.base (0 ms)
[----------] 1 test from ta_unit_api_qplc_expand_16u (0 ms total)

[----------] 1 test from ta_unit_api_qplc_expand_32u
[ RUN      ] ta_unit_api_qplc_expand_32u.base
[       OK ] ta_unit_api_qplc_expand_32u.base (0 ms)
[----------] 1 test from ta_unit_api_qplc_expand_32u (0 ms total)

[----------] 1 test from ta_unit_api_qplc_extract_8u
[ RUN      ] ta_unit_api_qplc_extract_8u.base
[       OK ] ta_unit_api_qplc_extract_8u.base (0 ms)
[----------] 1 test from ta_unit_api_qplc_extract_8u (0 ms total)

[----------] 1 test from ta_unit_api_qplc_extract_16u
[ RUN      ] ta_unit_api_qplc_extract_16u.base
[       OK ] ta_unit_api_qplc_extract_16u.base (0 ms)
[----------] 1 test from ta_unit_api_qplc_extract_16u (0 ms total)

[----------] 1 test from ta_unit_api_qplc_extract_32u
[ RUN      ] ta_unit_api_qplc_extract_32u.base
[       OK ] ta_unit_api_qplc_extract_32u.base (1 ms)
[----------] 1 test from ta_unit_api_qplc_extract_32u (1 ms total)

[----------] 1 test from ta_unit_api_qplc_extract_8u_i
[ RUN      ] ta_unit_api_qplc_extract_8u_i.base
[       OK ] ta_unit_api_qplc_extract_8u_i.base (1 ms)
[----------] 1 test from ta_unit_api_qplc_extract_8u_i (1 ms total)

[----------] 1 test from ta_unit_api_qplc_extract_16u_i
[ RUN      ] ta_unit_api_qplc_extract_16u_i.base
[       OK ] ta_unit_api_qplc_extract_16u_i.base (1 ms)
[----------] 1 test from ta_unit_api_qplc_extract_16u_i (1 ms total)

[----------] 1 test from ta_unit_api_qplc_extract_32u_i
[ RUN      ] ta_unit_api_qplc_extract_32u_i.base
[       OK ] ta_unit_api_qplc_extract_32u_i.base (3 ms)
[----------] 1 test from ta_unit_api_qplc_extract_32u_i (3 ms total)

[----------] 2 tests from ta_unit_api_own_move_8u
[ RUN      ] ta_unit_api_own_move_8u.forward_direction
[       OK ] ta_unit_api_own_move_8u.forward_direction (0 ms)
[ RUN      ] ta_unit_api_own_move_8u.backward_direction
[       OK ] ta_unit_api_own_move_8u.backward_direction (0 ms)
[----------] 2 tests from ta_unit_api_own_move_8u (0 ms total)

[----------] 1 test from ta_unit_api_qplc_pack_16u
[ RUN      ] ta_unit_api_qplc_pack_16u.base
[       OK ] ta_unit_api_qplc_pack_16u.base (1 ms)
[----------] 1 test from ta_unit_api_qplc_pack_16u (1 ms total)

[----------] 1 test from ta_unit_api_qplc_pack_32u
[ RUN      ] ta_unit_api_qplc_pack_32u.base
[       OK ] ta_unit_api_qplc_pack_32u.base (4 ms)
[----------] 1 test from ta_unit_api_qplc_pack_32u (4 ms total)

[----------] 1 test from ta_unit_api_qplc_pack_8u
[ RUN      ] ta_unit_api_qplc_pack_8u.base
[       OK ] ta_unit_api_qplc_pack_8u.base (1 ms)
[----------] 1 test from ta_unit_api_qplc_pack_8u (1 ms total)

[----------] 1 test from ta_unit_api_qplc_pack_index_be_8u16u
[ RUN      ] ta_unit_api_qplc_pack_index_be_8u16u.base
[       OK ] ta_unit_api_qplc_pack_index_be_8u16u.base (12 ms)
[----------] 1 test from ta_unit_api_qplc_pack_index_be_8u16u (12 ms total)

[----------] 1 test from ta_unit_api_qplc_pack_index_be_8u32u
[ RUN      ] ta_unit_api_qplc_pack_index_be_8u32u.base
[       OK ] ta_unit_api_qplc_pack_index_be_8u32u.base (20 ms)
[----------] 1 test from ta_unit_api_qplc_pack_index_be_8u32u (20 ms total)

[----------] 1 test from ta_unit_api_qplc_pack_idx_8u
[ RUN      ] ta_unit_api_qplc_pack_idx_8u.base
[       OK ] ta_unit_api_qplc_pack_idx_8u.base (472 ms)
[----------] 1 test from ta_unit_api_qplc_pack_idx_8u (472 ms total)

[----------] 1 test from ta_unit_api_qplc_pack_idx_8u16u
[ RUN      ] ta_unit_api_qplc_pack_idx_8u16u.base
[       OK ] ta_unit_api_qplc_pack_idx_8u16u.base (11 ms)
[----------] 1 test from ta_unit_api_qplc_pack_idx_8u16u (11 ms total)

[----------] 1 test from ta_unit_api_qplc_pack_idx_8u32u
[ RUN      ] ta_unit_api_qplc_pack_idx_8u32u.base
[       OK ] ta_unit_api_qplc_pack_idx_8u32u.base (1238 ms)
[----------] 1 test from ta_unit_api_qplc_pack_idx_8u32u (1238 ms total)

[----------] 1 test from ta_unit_api_qplc_select_8u
[ RUN      ] ta_unit_api_qplc_select_8u.base
[       OK ] ta_unit_api_qplc_select_8u.base (0 ms)
[----------] 1 test from ta_unit_api_qplc_select_8u (0 ms total)

[----------] 1 test from ta_unit_api_qplc_select_16u
[ RUN      ] ta_unit_api_qplc_select_16u.base
[       OK ] ta_unit_api_qplc_select_16u.base (0 ms)
[----------] 1 test from ta_unit_api_qplc_select_16u (0 ms total)

[----------] 1 test from ta_unit_api_qplc_select_32u
[ RUN      ] ta_unit_api_qplc_select_32u.base
[       OK ] ta_unit_api_qplc_select_32u.base (0 ms)
[----------] 1 test from ta_unit_api_qplc_select_32u (0 ms total)

[----------] 1 test from ta_unit_api_qplc_select_8u_i
[ RUN      ] ta_unit_api_qplc_select_8u_i.base
[       OK ] ta_unit_api_qplc_select_8u_i.base (0 ms)
[----------] 1 test from ta_unit_api_qplc_select_8u_i (0 ms total)

[----------] 1 test from ta_unit_api_qplc_select_16u_i
[ RUN      ] ta_unit_api_qplc_select_16u_i.base
[       OK ] ta_unit_api_qplc_select_16u_i.base (0 ms)
[----------] 1 test from ta_unit_api_qplc_select_16u_i (0 ms total)

[----------] 1 test from ta_unit_api_qplc_select_32u_i
[ RUN      ] ta_unit_api_qplc_select_32u_i.base
[       OK ] ta_unit_api_qplc_select_32u_i.base (0 ms)
[----------] 1 test from ta_unit_api_qplc_select_32u_i (0 ms total)

[----------] 1 test from ta_unit_api_qplc_unpack_16u
[ RUN      ] ta_unit_api_qplc_unpack_16u.base
[       OK ] ta_unit_api_qplc_unpack_16u.base (1 ms)
[----------] 1 test from ta_unit_api_qplc_unpack_16u (1 ms total)

[----------] 1 test from ta_unit_api_qplc_unpack_32u
[ RUN      ] ta_unit_api_qplc_unpack_32u.base
[       OK ] ta_unit_api_qplc_unpack_32u.base (8 ms)
[----------] 1 test from ta_unit_api_qplc_unpack_32u (8 ms total)

[----------] 1 test from ta_unit_api_qplc_unpack_8u
[ RUN      ] ta_unit_api_qplc_unpack_8u.base
[       OK ] ta_unit_api_qplc_unpack_8u.base (1 ms)
[----------] 1 test from ta_unit_api_qplc_unpack_8u (1 ms total)

[----------] 1 test from ta_unit_api_qplc_unpack_be_16u
[ RUN      ] ta_unit_api_qplc_unpack_be_16u.base
[       OK ] ta_unit_api_qplc_unpack_be_16u.base (1 ms)
[----------] 1 test from ta_unit_api_qplc_unpack_be_16u (1 ms total)

[----------] 1 test from ta_unit_api_qplc_unpack_be_32u
[ RUN      ] ta_unit_api_qplc_unpack_be_32u.base
[       OK ] ta_unit_api_qplc_unpack_be_32u.base (10 ms)
[----------] 1 test from ta_unit_api_qplc_unpack_be_32u (10 ms total)

[----------] 1 test from ta_unit_api_qplc_unpack_be_8u
[ RUN      ] ta_unit_api_qplc_unpack_be_8u.base
[       OK ] ta_unit_api_qplc_unpack_be_8u.base (0 ms)
[----------] 1 test from ta_unit_api_qplc_unpack_be_8u (0 ms total)

[----------] 1 test from ta_unit_api_qplc_unpack_prle_8u
[ RUN      ] ta_unit_api_qplc_unpack_prle_8u.base
[       OK ] ta_unit_api_qplc_unpack_prle_8u.base (2337 ms)
[----------] 1 test from ta_unit_api_qplc_unpack_prle_8u (2337 ms total)

[----------] 1 test from ta_unit_api_qplc_unpack_prle_16u
[ RUN      ] ta_unit_api_qplc_unpack_prle_16u.base
[       OK ] ta_unit_api_qplc_unpack_prle_16u.base (3326 ms)
[----------] 1 test from ta_unit_api_qplc_unpack_prle_16u (3327 ms total)

[----------] 1 test from ta_unit_api_qplc_unpack_prle_32u
[ RUN      ] ta_unit_api_qplc_unpack_prle_32u.base
[       OK ] ta_unit_api_qplc_unpack_prle_32u.base (7888 ms)
[----------] 1 test from ta_unit_api_qplc_unpack_prle_32u (7888 ms total)

[----------] 1 test from ta_unit_api_qpl_zero_8u
[ RUN      ] ta_unit_api_qpl_zero_8u.base
[       OK ] ta_unit_api_qpl_zero_8u.base (0 ms)
[----------] 1 test from ta_unit_api_qpl_zero_8u (0 ms total)

[----------] 5 tests from ta_unit_api_fallback
[ RUN      ] ta_unit_api_fallback.filtering
[       OK ] ta_unit_api_fallback.filtering (0 ms)
[ RUN      ] ta_unit_api_fallback.inflate
[       OK ] ta_unit_api_fallback.inflate (0 ms)
[ RUN      ] ta_unit_api_fallback.deflate
[       OK ] ta_unit_api_fallback.deflate (0 ms)
[ RUN      ] ta_unit_api_fallback.others
[       OK ] ta_unit_api_fallback.others (0 ms)
[ RUN      ] ta_unit_api_fallback.multi_job_support
[       OK ] ta_unit_api_fallback.multi_job_support (0 ms)
[----------] 5 tests from ta_unit_api_fallback (0 ms total)

[----------] Global test environment tear-down
[==========] 47 tests from 42 test suites ran. (15362 ms total)
[  PASSED  ] 47 tests.
Tests seed = 1721404112

on-behalf-of: @Permanence-AI-Coder github-ai@permanence.ai

    - modify tools/tests/functional/unit_tests/algorithmic/core_pack_16u.cpp (replace for loop with std algorithm )
    - modify tools/tests/functional/unit_tests/algorithmic/core_pack_32u.cpp (replace for loop with std algorithm )
    - modify tools/tests/functional/unit_tests/algorithmic/core_select.cpp (replace for loop with std algorithm )

on-behalf-of: @permanence-ai <github-ai@permanence.ai>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants