Skip to content

Commit

Permalink
Split algorithm tests on CircleCI
Browse files Browse the repository at this point in the history
  • Loading branch information
hkaiser committed Apr 14, 2024
1 parent e0416f7 commit ca8e628
Show file tree
Hide file tree
Showing 3 changed files with 202 additions and 15 deletions.
62 changes: 47 additions & 15 deletions .circleci/config.yml
Expand Up @@ -490,18 +490,16 @@ jobs:
paths:
- ./build

tests.unit.algorithms:
tests.unit1.algorithms:
<<: *defaults
steps:
- attach_workspace:
at: /hpx
- run:
name: Building Unit Tests (Algorithms)
name: Building Unit Tests (Algorithms, 1)
command: |
ninja -j2 -k 0 \
tests.unit.modules.algorithms.algorithms \
tests.unit.modules.algorithms.block
# tests.unit.modules.algorithms.datapar_algorithms
ninja -j1 -k 0 \
`grep -v -e ^# -e ^$ /hpx/source/.circleci/tests.unit1.algorithms`
- run:
name: Running Unit Tests
when: always
Expand All @@ -513,19 +511,50 @@ jobs:
--no-compress-output \
--output-on-failure \
--tests-regex \
"tests.unit.modules.algorithms.algorithms|\
tests.unit.modules.algorithms.block"
# "|tests.unit.modules.algorithms.datapar_algorithms"
`grep -v -e ^# -e ^$ /hpx/source/.circleci/tests.unit1.algorithms | sed ':b;N;$!bb;s/\n/|/g'`
- run:
<<: *convert_xml
- run:
<<: *move_core_dump
- run:
<<: *move_debug_log
- store_test_results:
path: tests.unit.algorithms
path: tests.unit1.algorithms
- store_artifacts:
path: tests.unit.algorithms
path: tests.unit1.algorithms

tests.unit2.algorithms:
<<: *defaults
steps:
- attach_workspace:
at: /hpx
- run:
name: Building Unit Tests (Algorithms, 2)
command: |
ninja -j1 -k 0 \
`grep -v -e ^# -e ^$ /hpx/source/.circleci/tests.unit2.algorithms`
- run:
name: Running Unit Tests
when: always
command: |
ulimit -c unlimited
ctest \
--timeout 120 \
-T test \
--no-compress-output \
--output-on-failure \
--tests-regex \
`grep -v -e ^# -e ^$ /hpx/source/.circleci/tests.unit2.algorithms | sed ':b;N;$!bb;s/\n/|/g'`
- run:
<<: *convert_xml
- run:
<<: *move_core_dump
- run:
<<: *move_debug_log
- store_test_results:
path: tests.unit2.algorithms
- store_artifacts:
path: tests.unit2.algorithms

tests.unit.container_algorithms:
<<: *defaults
Expand Down Expand Up @@ -595,7 +624,7 @@ jobs:
- attach_workspace:
at: /hpx
- run:
name: Building Unit Tests
name: Building Unit Tests (1)
command: |
ninja -j2 -k 0 `grep -v -e ^# -e ^$ /hpx/source/.circleci/tests.unit1.targets`
- run:
Expand Down Expand Up @@ -626,7 +655,7 @@ jobs:
- attach_workspace:
at: /hpx
- run:
name: Building Unit Tests
name: Building Unit Tests (2)
command: |
ninja -j2 -k 0 `grep -v -e ^# -e ^$ /hpx/source/.circleci/tests.unit2.targets`
- run:
Expand Down Expand Up @@ -912,7 +941,9 @@ workflows:
<<: *gh_pages_filter
- tests.examples:
<<: *core_dependency
- tests.unit.algorithms:
- tests.unit1.algorithms:
<<: *core_dependency
- tests.unit2.algorithms:
<<: *core_dependency
- tests.unit.container_algorithms:
<<: *core_dependency
Expand Down Expand Up @@ -970,7 +1001,8 @@ workflows:
requires:
- core
- tests.examples
- tests.unit.algorithms
- tests.unit1.algorithms
- tests.unit2.algorithms
- tests.unit.container_algorithms
- tests.unit.segmented_algorithms
- tests.unit1
Expand Down
76 changes: 76 additions & 0 deletions .circleci/tests.unit1.algorithms
@@ -0,0 +1,76 @@
# Copyright (c) 2021-2024 Hartmut Kaiser
#
# SPDX-License-Identifier: BSL-1.0
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

tests.unit.modules.algorithms.algorithms.adjacentdifference
tests.unit.modules.algorithms.algorithms.adjacentdifference_sender
tests.unit.modules.algorithms.algorithms.adjacentfind
tests.unit.modules.algorithms.algorithms.adjacentfind_binary
tests.unit.modules.algorithms.algorithms.all_of
tests.unit.modules.algorithms.algorithms.any_of
tests.unit.modules.algorithms.algorithms.copy
tests.unit.modules.algorithms.algorithms.copyif_random
tests.unit.modules.algorithms.algorithms.copyif_forward
tests.unit.modules.algorithms.algorithms.copyif_exception
tests.unit.modules.algorithms.algorithms.copyif_bad_alloc
tests.unit.modules.algorithms.algorithms.copyn
tests.unit.modules.algorithms.algorithms.count
tests.unit.modules.algorithms.algorithms.countif
tests.unit.modules.algorithms.algorithms.destroy
tests.unit.modules.algorithms.algorithms.destroyn
tests.unit.modules.algorithms.algorithms.ends_with
tests.unit.modules.algorithms.algorithms.equal
tests.unit.modules.algorithms.algorithms.equal_binary
tests.unit.modules.algorithms.algorithms.exclusive_scan
tests.unit.modules.algorithms.algorithms.exclusive_scan2
tests.unit.modules.algorithms.algorithms.exclusive_scan_exception
tests.unit.modules.algorithms.algorithms.exclusive_scan_bad_alloc
tests.unit.modules.algorithms.algorithms.exclusive_scan_validate
tests.unit.modules.algorithms.algorithms.fill
tests.unit.modules.algorithms.algorithms.filln
tests.unit.modules.algorithms.algorithms.find
tests.unit.modules.algorithms.algorithms.find_sender
tests.unit.modules.algorithms.algorithms.findend
tests.unit.modules.algorithms.algorithms.findfirstof
tests.unit.modules.algorithms.algorithms.findfirstof_binary
tests.unit.modules.algorithms.algorithms.findif
tests.unit.modules.algorithms.algorithms.findifnot
tests.unit.modules.algorithms.algorithms.foreach
tests.unit.modules.algorithms.algorithms.foreach_executors
tests.unit.modules.algorithms.algorithms.foreach_prefetching
tests.unit.modules.algorithms.algorithms.foreach_sender
tests.unit.modules.algorithms.algorithms.foreach_scheduler
tests.unit.modules.algorithms.algorithms.foreachn
tests.unit.modules.algorithms.algorithms.foreachn_exception
tests.unit.modules.algorithms.algorithms.foreachn_bad_alloc
tests.unit.modules.algorithms.algorithms.for_loop
tests.unit.modules.algorithms.algorithms.for_loop_exception
tests.unit.modules.algorithms.algorithms.for_loop_induction
tests.unit.modules.algorithms.algorithms.for_loop_induction_async
tests.unit.modules.algorithms.algorithms.for_loop_n
tests.unit.modules.algorithms.algorithms.for_loop_n_strided
tests.unit.modules.algorithms.algorithms.for_loop_reduction
tests.unit.modules.algorithms.algorithms.for_loop_reduction_async
tests.unit.modules.algorithms.algorithms.for_loop_sender
tests.unit.modules.algorithms.algorithms.for_loop_strided
tests.unit.modules.algorithms.algorithms.generate
tests.unit.modules.algorithms.algorithms.generaten
tests.unit.modules.algorithms.algorithms.is_heap
tests.unit.modules.algorithms.algorithms.is_heap_until
tests.unit.modules.algorithms.algorithms.includes
tests.unit.modules.algorithms.algorithms.inclusive_scan
tests.unit.modules.algorithms.algorithms.inclusive_scan_exception
tests.unit.modules.algorithms.algorithms.inplace_merge
tests.unit.modules.algorithms.algorithms.is_partitioned
tests.unit.modules.algorithms.algorithms.is_sorted
tests.unit.modules.algorithms.algorithms.is_sorted_until
tests.unit.modules.algorithms.algorithms.lexicographical_compare
tests.unit.modules.algorithms.algorithms.make_heap
tests.unit.modules.algorithms.algorithms.max_element
tests.unit.modules.algorithms.algorithms.merge
tests.unit.modules.algorithms.algorithms.min_element
tests.unit.modules.algorithms.algorithms.minmax_element
tests.unit.modules.algorithms.algorithms.mismatch
tests.unit.modules.algorithms.algorithms.mismatch_binary
79 changes: 79 additions & 0 deletions .circleci/tests.unit2.algorithms
@@ -0,0 +1,79 @@
# Copyright (c) 2021-2024 Hartmut Kaiser
#
# SPDX-License-Identifier: BSL-1.0
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

tests.unit.modules.algorithms.algorithms.move
tests.unit.modules.algorithms.algorithms.nth_element
tests.unit.modules.algorithms.algorithms.none_of
tests.unit.modules.algorithms.algorithms.parallel_sort
tests.unit.modules.algorithms.algorithms.partial_sort
tests.unit.modules.algorithms.algorithms.partial_sort_copy
tests.unit.modules.algorithms.algorithms.partition
tests.unit.modules.algorithms.algorithms.partition_copy
tests.unit.modules.algorithms.algorithms.reduce_
tests.unit.modules.algorithms.algorithms.reduce_by_key
tests.unit.modules.algorithms.algorithms.remove
tests.unit.modules.algorithms.algorithms.remove
tests.unit.modules.algorithms.algorithms.remove1
tests.unit.modules.algorithms.algorithms.remove2
tests.unit.modules.algorithms.algorithms.remove_if
tests.unit.modules.algorithms.algorithms.remove_if1
tests.unit.modules.algorithms.algorithms.remove_copy
tests.unit.modules.algorithms.algorithms.remove_copy_if
tests.unit.modules.algorithms.algorithms.replace
tests.unit.modules.algorithms.algorithms.replace_if
tests.unit.modules.algorithms.algorithms.replace_copy
tests.unit.modules.algorithms.algorithms.replace_copy_if
tests.unit.modules.algorithms.algorithms.reverse
tests.unit.modules.algorithms.algorithms.reverse_copy
tests.unit.modules.algorithms.algorithms.reverse_sender
tests.unit.modules.algorithms.algorithms.rotate
tests.unit.modules.algorithms.algorithms.rotate_copy
tests.unit.modules.algorithms.algorithms.rotate_sender
tests.unit.modules.algorithms.algorithms.search
tests.unit.modules.algorithms.algorithms.searchn
tests.unit.modules.algorithms.algorithms.set_difference
tests.unit.modules.algorithms.algorithms.set_intersection
tests.unit.modules.algorithms.algorithms.set_symmetric_difference
tests.unit.modules.algorithms.algorithms.set_union
tests.unit.modules.algorithms.algorithms.shift_left
tests.unit.modules.algorithms.algorithms.shift_right
tests.unit.modules.algorithms.algorithms.sort
tests.unit.modules.algorithms.algorithms.sort_by_key
tests.unit.modules.algorithms.algorithms.sort_exceptions
tests.unit.modules.algorithms.algorithms.stable_partition
tests.unit.modules.algorithms.algorithms.stable_sort
tests.unit.modules.algorithms.algorithms.stable_sort_exceptions
tests.unit.modules.algorithms.algorithms.starts_with
tests.unit.modules.algorithms.algorithms.swapranges
tests.unit.modules.algorithms.algorithms.transform
tests.unit.modules.algorithms.algorithms.transform_binary
tests.unit.modules.algorithms.algorithms.transform_binary2
tests.unit.modules.algorithms.algorithms.transform_exclusive_scan
tests.unit.modules.algorithms.algorithms.transform_inclusive_scan
tests.unit.modules.algorithms.algorithms.transform_reduce
tests.unit.modules.algorithms.algorithms.transform_reduce_binary
tests.unit.modules.algorithms.algorithms.transform_reduce_binary_exception
tests.unit.modules.algorithms.algorithms.transform_reduce_binary_bad_alloc
tests.unit.modules.algorithms.algorithms.uninitialized_copy
tests.unit.modules.algorithms.algorithms.uninitialized_copyn
tests.unit.modules.algorithms.algorithms.uninitialized_default_construct
tests.unit.modules.algorithms.algorithms.uninitialized_default_constructn
tests.unit.modules.algorithms.algorithms.uninitialized_fill
tests.unit.modules.algorithms.algorithms.uninitialized_filln
tests.unit.modules.algorithms.algorithms.uninitialized_move
tests.unit.modules.algorithms.algorithms.uninitialized_moven
tests.unit.modules.algorithms.algorithms.uninitialized_relocate_backward
tests.unit.modules.algorithms.algorithms.uninitialized_relocate
tests.unit.modules.algorithms.algorithms.uninitialized_relocaten
tests.unit.modules.algorithms.algorithms.uninitialized_value_construct
tests.unit.modules.algorithms.algorithms.uninitialized_value_constructn
tests.unit.modules.algorithms.algorithms.unique
tests.unit.modules.algorithms.algorithms.unique_copy
tests.unit.modules.algorithms.block.spmd_block
tests.unit.modules.algorithms.block.task_block
tests.unit.modules.algorithms.block.task_block_executor
tests.unit.modules.algorithms.block.task_block_par
tests.unit.modules.algorithms.block.task_group

0 comments on commit ca8e628

Please sign in to comment.