- uses: git-for-windows/setup-git-for-windows-sdk@v1
- name: test
shell: bash
- run: . /etc/profile && ci/run-test-slice.sh ${{matrix.nr}} 10
+ run: . /etc/profile && ci/run-test-slice.sh $((${{matrix.nr}} + 1)) 10
- name: print test failures
if: failure() && env.FAILED_TEST_ARTIFACTS != ''
shell: bash
shell: bash
env:
NO_SVN_TESTS: 1
- run: . /etc/profile && ci/run-test-slice.sh ${{matrix.nr}} 10
+ run: . /etc/profile && ci/run-test-slice.sh $((${{matrix.nr}} + 1)) 10
- name: print test failures
if: failure() && env.FAILED_TEST_ARTIFACTS != ''
shell: bash
if (argc > 5 && !strcmp(argv[1], "slice-tests")) {
int res = 0;
- long offset, stride, i;
+ long slice, slices_total, i;
struct string_list list = STRING_LIST_INIT_NODUP;
struct stat st;
- offset = strtol(argv[2], NULL, 10);
- stride = strtol(argv[3], NULL, 10);
- if (stride < 1)
- stride = 1;
+ slices_total = strtol(argv[3], NULL, 10);
+ if (slices_total < 1)
+ die("there must be at least one slice, got '%s'",
+ argv[3]);
+
+ slice = strtol(argv[2], NULL, 10);
+ if (1 > slice || slice > slices_total)
+ die("slice must be in the range 1 <= slice <= %ld, got '%s'",
+ slices_total, argv[2]);
+
for (i = 4; i < argc; i++)
if (stat(argv[i], &st))
res = error_errno("Cannot stat '%s'", argv[i]);
string_list_append(&list, argv[i])->util =
(void *)(intptr_t)st.st_size;
QSORT(list.items, list.nr, cmp_by_st_size);
- for (i = offset; i < list.nr; i+= stride)
+ for (i = slice - 1; i < list.nr; i+= slices_total)
printf("%s\n", list.items[i].string);
return !!res;