~lttng/lttng-ust/lttng-ust

« back to all changes in this revision

Viewing changes to tests/unit/libcommon/test_get_max_cpuid_from_sysfs

  • Committer: Mathieu Desnoyers
  • Author(s): Michael Jeanson
  • Date: 2022-07-29 14:33:10 UTC
  • Revision ID: git-v1:fb0f6ca9385e1813311cfd917c130b40bec04970
Add more unit tests for possible_cpus_array_len

Change-Id: If0b7fb9183936f00ac90349fb32f1db57f124602
Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/bin/bash
 
2
# SPDX-License-Identifier: LGPL-2.1-only
 
3
 
 
4
if [ "x${UST_TESTS_SRCDIR:-}" != "x" ]; then
 
5
        UTILSSH="$UST_TESTS_SRCDIR/utils/utils.sh"
 
6
else
 
7
        UTILSSH="$(dirname "$0")/../../utils/utils.sh"
 
8
fi
 
9
 
 
10
# shellcheck source=../../utils/utils.sh
 
11
source "$UTILSSH"
 
12
 
 
13
# shellcheck source=../../utils/tap.sh
 
14
source "$UST_TESTS_SRCDIR/utils/tap.sh"
 
15
 
 
16
CURDIR="${UST_TESTS_BUILDDIR}/unit/libcommon"
 
17
 
 
18
STD_OUTPUT="/dev/null"
 
19
STD_ERROR="/dev/null"
 
20
 
 
21
NUM_TESTS=13
 
22
 
 
23
TESTDIR=$(mktemp -d)
 
24
 
 
25
populate_testdir() {
 
26
        local cpus=("$@")
 
27
 
 
28
        mkdir "$TESTDIR"
 
29
 
 
30
        for i in "${cpus[@]}"; do
 
31
                mkdir "$TESTDIR/$i"
 
32
        done
 
33
}
 
34
 
 
35
test_get_max_cpuid_from_sysfs() {
 
36
        local num_cpus=$1
 
37
        shift
 
38
        local current_cpus=("$@")
 
39
        local result
 
40
 
 
41
        populate_testdir "${current_cpus[@]}" >"$STD_OUTPUT" 2>"$STD_ERROR"
 
42
        result=$("${CURDIR}/get_max_cpuid_from_sysfs" "$TESTDIR")
 
43
        is "$result" "$num_cpus" "get_max_cpuid_from_sysfs - cpu set: '${current_cpus[*]}', expected: '$num_cpus', result: '$result'"
 
44
        rm -rf "$TESTDIR"
 
45
}
 
46
 
 
47
plan_tests $NUM_TESTS
 
48
 
 
49
diag "get_max_cpuid_from_sysfs"
 
50
 
 
51
test_data=(0 "cpu0")
 
52
test_get_max_cpuid_from_sysfs "${test_data[@]}"
 
53
 
 
54
test_data=(1 "cpu0" "cpu1")
 
55
test_get_max_cpuid_from_sysfs "${test_data[@]}"
 
56
 
 
57
test_data=(1 "cpu1" "cpu0")
 
58
test_get_max_cpuid_from_sysfs "${test_data[@]}"
 
59
 
 
60
test_data=(3 "cpu3")
 
61
test_get_max_cpuid_from_sysfs "${test_data[@]}"
 
62
 
 
63
test_data=(99 "cpu99")
 
64
test_get_max_cpuid_from_sysfs "${test_data[@]}"
 
65
 
 
66
test_data=(3 "cpu0" "cpu3")
 
67
test_get_max_cpuid_from_sysfs "${test_data[@]}"
 
68
 
 
69
test_data=(3 "cpufreq" "cpuidle" "cpu0" "cpu1" "cpu2" "cpu3")
 
70
test_get_max_cpuid_from_sysfs "${test_data[@]}"
 
71
 
 
72
test_data=(0 "cpu" "cpu0")
 
73
test_get_max_cpuid_from_sysfs "${test_data[@]}"
 
74
 
 
75
test_data=(5 "cpu" "cpu5")
 
76
test_get_max_cpuid_from_sysfs "${test_data[@]}"
 
77
 
 
78
 
 
79
test_data=(-1 "toto")
 
80
test_get_max_cpuid_from_sysfs "${test_data[@]}"
 
81
 
 
82
test_data=(-1 "cpu")
 
83
test_get_max_cpuid_from_sysfs "${test_data[@]}"
 
84
 
 
85
test_data=(-1 "cpua" "cpud")
 
86
test_get_max_cpuid_from_sysfs "${test_data[@]}"
 
87
 
 
88
test_data=(-1 "cpufreq" "cpuidle")
 
89
test_get_max_cpuid_from_sysfs "${test_data[@]}"