[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 08/19] qlit: Move qlit_equal_qobject() reference values to
From: |
Markus Armbruster |
Subject: |
Re: [PATCH v3 08/19] qlit: Move qlit_equal_qobject() reference values to array |
Date: |
Tue, 24 Nov 2020 10:51:34 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) |
Eduardo Habkost <ehabkost@redhat.com> writes:
> Add an array of values to qlit_equal_qobject_test(), so we can
> extend the test case to compare multiple literals, not just the
> ones at the existing `qlit` and `qlit_foo` variables.
>
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
> ---
> This is a new patch added in v3 of this series.
> ---
> tests/check-qlit.c | 26 +++++++++++++++++++-------
> 1 file changed, 19 insertions(+), 7 deletions(-)
>
> diff --git a/tests/check-qlit.c b/tests/check-qlit.c
> index 24ac21395c..b1cfbddb17 100644
> --- a/tests/check-qlit.c
> +++ b/tests/check-qlit.c
> @@ -29,11 +29,6 @@ static QLitObject qlit = QLIT_QDICT(((QLitDictEntry[]) {
> { },
> }));
>
> -static QLitObject qlit_foo = QLIT_QDICT(((QLitDictEntry[]) {
> - { "foo", QLIT_QNUM_INT(42) },
> - { },
> -}));
> -
> static QObject *make_qobject(void)
> {
> QDict *qdict = qdict_new();
> @@ -53,16 +48,33 @@ static QObject *make_qobject(void)
>
> static void qlit_equal_qobject_test(void)
> {
> + /* Each entry in the values[] array should be different from the others
> */
> + QLitObject values[] = {
> + qlit,
> + QLIT_QDICT(((QLitDictEntry[]) {
> + { "foo", QLIT_QNUM_INT(42) },
> + { },
> + })),
> + };
> + int i;
> QObject *qobj = make_qobject();
>
> g_assert(qlit_equal_qobject(&qlit, qobj));
>
> - g_assert(!qlit_equal_qobject(&qlit_foo, qobj));
> -
> qdict_put(qobject_to(QDict, qobj), "bee", qlist_new());
> g_assert(!qlit_equal_qobject(&qlit, qobj));
>
> qobject_unref(qobj);
> +
> + for (i = 0; i < ARRAY_SIZE(values); i++) {
> + int j;
I'd prefer to declare this one together with @i.
> + QObject *o = qobject_from_qlit(&values[i]);
Blank line, if you don't mind.
> + for (j = 0; j < ARRAY_SIZE(values); j++) {
> + g_assert(qlit_equal_qobject(&values[j], o) == (i == j));
> + }
> + qobject_unref(o);
> + }
> +
> }
>
> static void qlit_equal_large_qnum_test(void)
- [PATCH v3 05/19] qlit: Use qnum_value_is_equal() when comparing QNums, (continued)
[PATCH v3 09/19] qlit: Add more test literals to qlit_equal_qobject() test case, Eduardo Habkost, 2020/11/23
[PATCH v3 08/19] qlit: Move qlit_equal_qobject() reference values to array, Eduardo Habkost, 2020/11/23
- Re: [PATCH v3 08/19] qlit: Move qlit_equal_qobject() reference values to array,
Markus Armbruster <=
[PATCH v3 11/19] qom: field_prop_set_default_value() helper, Eduardo Habkost, 2020/11/23
[PATCH v3 12/19] qom: Replace defval value in Property with QLitObject, Eduardo Habkost, 2020/11/23
[PATCH v3 13/19] qom: Fix documentation of UUID property type, Eduardo Habkost, 2020/11/23
[PATCH v3 15/19] qom: Make object_property_set_default() public, Eduardo Habkost, 2020/11/23
[PATCH v3 16/19] qom: Make PropertyInfo.set_default_value optional, Eduardo Habkost, 2020/11/23
[PATCH v3 17/19] qom: Delete field_prop_set_default_value_*int(), Eduardo Habkost, 2020/11/23