On 2021/11/15 22:58, Philippe Mathieu-Daudé wrote:
Split the 'generic' test in two tests: 'valid' and 'invalid'.
This will allow us to remove the hack which modifies the
MachineClass internal state.
Signed-off-by: Philippe Mathieu-Daudé <phi...@redhat.com>
---
tests/unit/test-smp-parse.c | 22 +++++++++++++++++++---
1 file changed, 19 insertions(+), 3 deletions(-)
diff --git a/tests/unit/test-smp-parse.c b/tests/unit/test-smp-parse.c
index 37c6b4981db..e27aedad354 100644
--- a/tests/unit/test-smp-parse.c
+++ b/tests/unit/test-smp-parse.c
@@ -487,7 +487,7 @@ static void machine_base_class_init(ObjectClass *oc, void
*data)
mc->name = g_strdup(SMP_MACHINE_NAME);
}
-static void test_generic(const void *opaque)
+static void test_generic_valid(const void *opaque)
{
const char *machine_type = opaque;
Object *obj = object_new(machine_type);
@@ -508,6 +508,19 @@ static void test_generic(const void *opaque)
smp_parse_test(ms, data, true);
}
+ object_unref(obj);
+}
+
+static void test_generic_invalid(const void *opaque)
+{
+ const char *machine_type = opaque;
+ Object *obj = object_new(machine_type);
+ MachineState *ms = MACHINE(obj);
+ MachineClass *mc = MACHINE_GET_CLASS(obj);
+ SMPTestData *data = &(SMPTestData){};
+ int i;
+
+
Ah, there is an extra empty line which should be deleted.
Thanks,
Yanan
/* Force invalid min CPUs and max CPUs */
mc->min_cpus = 2;
mc->max_cpus = 511;
@@ -601,9 +614,12 @@ int main(int argc, char *argv[])
g_test_init(&argc, &argv, NULL);
- g_test_add_data_func("/test-smp-parse/generic",
+ g_test_add_data_func("/test-smp-parse/generic/valid",
TYPE_MACHINE,
- test_generic);
+ test_generic_valid);
+ g_test_add_data_func("/test-smp-parse/generic/invalid",
+ TYPE_MACHINE,
+ test_generic_invalid);
g_test_add_data_func("/test-smp-parse/with_dies",
TYPE_MACHINE,
test_with_dies);