From patchwork Mon Apr 21 14:40:13 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Juan Quintela X-Patchwork-Id: 341008 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id B075A140078 for ; Tue, 22 Apr 2014 13:15:24 +1000 (EST) Received: from localhost ([::1]:49383 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WcFj1-000749-Ua for incoming@patchwork.ozlabs.org; Mon, 21 Apr 2014 11:01:39 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58645) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WcFQd-00043D-Jg for qemu-devel@nongnu.org; Mon, 21 Apr 2014 10:42:47 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WcFQX-00041f-Fj for qemu-devel@nongnu.org; Mon, 21 Apr 2014 10:42:39 -0400 Received: from mx1.redhat.com ([209.132.183.28]:35566) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WcFQX-00041T-4e for qemu-devel@nongnu.org; Mon, 21 Apr 2014 10:42:33 -0400 Received: from int-mx11.intmail.prod.int.phx2.redhat.com (int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.24]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s3LEgWL9031560 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Mon, 21 Apr 2014 10:42:32 -0400 Received: from trasno.mitica (ovpn-116-41.ams2.redhat.com [10.36.116.41]) by int-mx11.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id s3LEfi6d019220; Mon, 21 Apr 2014 10:42:31 -0400 From: Juan Quintela To: qemu-devel@nongnu.org Date: Mon, 21 Apr 2014 16:40:13 +0200 Message-Id: <1398091304-10677-34-git-send-email-quintela@redhat.com> In-Reply-To: <1398091304-10677-1-git-send-email-quintela@redhat.com> References: <1398091304-10677-1-git-send-email-quintela@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.24 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH 033/124] vmstate: Test for VMSTATE_INT32_LE X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Add tests for less/more than the value on destination. Signed-off-by: Juan Quintela --- include/migration/vmstate.h | 4 ++-- tests/test-vmstate.c | 20 +++++++++++++++++++- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h index 9765973..397fa1d 100644 --- a/include/migration/vmstate.h +++ b/include/migration/vmstate.h @@ -585,8 +585,8 @@ extern const VMStateInfo vmstate_info_bitmap; #define VMSTATE_INT32_EQUAL(_f, _s) \ VMSTATE_SINGLE_TEST(_f, _s, NULL, 0, vmstate_info_int32_equal, int32_t) -#define VMSTATE_INT32_LE(_f, _s) \ - VMSTATE_SINGLE(_f, _s, 0, vmstate_info_int32_le, int32_t) +#define VMSTATE_INT32_LE(_f, _s) \ + VMSTATE_SINGLE_TEST(_f, _s, NULL, 0, vmstate_info_int32_le, int32_t) #define VMSTATE_FLOAT64(_f, _s) \ diff --git a/tests/test-vmstate.c b/tests/test-vmstate.c index 3fc8f5e..3e871c3 100644 --- a/tests/test-vmstate.c +++ b/tests/test-vmstate.c @@ -374,7 +374,8 @@ static const VMStateDescription vmstate_simple_compare = { VMSTATE_UINT16_EQUAL_TEST(u16_3, TestSimple, test_true), VMSTATE_UINT32_EQUAL(u32_1, TestSimple), VMSTATE_UINT64_EQUAL(u64_1, TestSimple), - VMSTATE_INT32_EQUAL(i32_1, TestSimple), + VMSTATE_INT32_EQUAL(i32_2, TestSimple), + VMSTATE_INT32_LE(i32_1, TestSimple), VMSTATE_END_OF_LIST() } }; @@ -385,6 +386,7 @@ uint8_t wire_simple_compare[] = { /* u16_3 */ 0x02, 0x00, /* u32_1 */ 0x00, 0x01, 0x11, 0x70, /* u64_1 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, 0xf4, 0x7c, + /* i32_2 */ 0xff, 0xfe, 0xee, 0x90, /* i32_1 */ 0x00, 0x01, 0x11, 0x70, QEMU_VM_EOF, /* just to ensure we won't get EOF reported prematurely */ }; @@ -412,6 +414,22 @@ static void test_simple_compare(void) FAILURE(load_vmstate(&vmstate_simple_compare, &obj, &obj_clone, obj_simple_copy, 1, wire_simple_compare, sizeof(wire_simple_compare))); + + /* testing less equal */ + + /* we change the value, so it is not equal anymore */ + memcpy(&obj, &obj_simple, sizeof(obj)); + obj.i32_1 = 8000; + FAILURE(load_vmstate(&vmstate_simple_compare, &obj, &obj_clone, + obj_simple_copy, 1, wire_simple_compare, + sizeof(wire_simple_compare))); + + /* we change the value, so it is not equal anymore */ + memcpy(&obj, &obj_simple, sizeof(obj)); + obj.i32_1 = 80000; + SUCCESS(load_vmstate(&vmstate_simple_compare, &obj, &obj_clone, + obj_simple_copy, 1, wire_simple_compare, + sizeof(wire_simple_compare))); } #undef FIELD_EQUAL