new file mode 100755
@@ -0,0 +1,43 @@
+#!/bin/bash
+# SPDX-License-Identifier: GPL-3.0+
+# Copyright (C) 2024 Western Digital Corporation or its affiliates.
+#
+# Test _set_combined_conditions() helper
+
+. tests/meta/rc
+
+DESCRIPTION="combine two set_conditions() hooks"
+
+conditions_x() {
+ local index=$1
+
+ if [[ -z $index ]]; then
+ echo 2
+ return
+ fi
+
+ meta_x_index=$index
+ COND_DESC="x=$index"
+}
+
+conditions_y() {
+ local index=$1
+
+ if [[ -z $index ]]; then
+ echo 2
+ return
+ fi
+
+ meta_y_index=$index
+ COND_DESC="y=$index"
+}
+
+set_conditions() {
+ _set_combined_conditions conditions_x conditions_y "$@"
+}
+
+test() {
+ echo "Running ${TEST_NAME}"
+ echo "(x,y)=(${meta_x_index},${meta_y_index})" >> "$FULL"
+ echo "Test complete"
+}
new file mode 100644
@@ -0,0 +1,2 @@
+Running meta/018
+Test complete
new file mode 100755
@@ -0,0 +1,55 @@
+#!/bin/bash
+# SPDX-License-Identifier: GPL-3.0+
+# Copyright (C) 2024 Western Digital Corporation or its affiliates.
+#
+# Test _set_combined_conditions() helper
+
+. tests/meta/rc
+
+DESCRIPTION="combine three set_conditions() hooks"
+
+conditions_x() {
+ local index=$1
+
+ if [[ -z $index ]]; then
+ echo 2
+ return
+ fi
+
+ meta_x_index=$index
+ COND_DESC="x=$index"
+}
+
+conditions_y() {
+ local index=$1
+
+ if [[ -z $index ]]; then
+ echo 2
+ return
+ fi
+
+ meta_y_index=$index
+ COND_DESC="y=$index"
+}
+
+conditions_z() {
+ local index=$1
+
+ if [[ -z $index ]]; then
+ echo 2
+ return
+ fi
+
+ meta_z_index=$index
+ COND_DESC="z=$index"
+}
+
+set_conditions() {
+ _set_combined_conditions conditions_x conditions_y conditions_z "$@"
+}
+
+test() {
+ echo "Running ${TEST_NAME}"
+ echo "(x,y,z)=(${meta_x_index},${meta_y_index},${meta_z_index})" >> "$FULL"
+ echo "Test complete"
+}
new file mode 100644
@@ -0,0 +1,2 @@
+Running meta/019
+Test complete
@@ -57,3 +57,8 @@ EOF
echo "$line" >> /dev/kmsg
done < "$TMPDIR/dmesg"
}
+
+# Global variables shared between set_conditions() and test()
+export meta_x_index=
+export meta_y_index=
+export meta_z_index=
Add test cases to confirm that the helper _set_combined_conditions is working. meta/018 combines two hooks, and meta/019 combines three hooks. Signed-off-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com> --- tests/meta/018 | 43 ++++++++++++++++++++++++++++++++++++ tests/meta/018.out | 2 ++ tests/meta/019 | 55 ++++++++++++++++++++++++++++++++++++++++++++++ tests/meta/019.out | 2 ++ tests/meta/rc | 5 +++++ 5 files changed, 107 insertions(+) create mode 100755 tests/meta/018 create mode 100644 tests/meta/018.out create mode 100755 tests/meta/019 create mode 100644 tests/meta/019.out