[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 28/97] vmstate: Test for VMSTATE_INT32_LE
From: |
Juan Quintela |
Subject: |
[Qemu-devel] [PATCH 28/97] vmstate: Test for VMSTATE_INT32_LE |
Date: |
Mon, 7 Apr 2014 05:20:46 +0200 |
Add tests for less/more than the value on destination.
Signed-off-by: Juan Quintela <address@hidden>
---
include/migration/vmstate.h | 4 ++--
tests/test-vmstate.c | 25 ++++++++++++++++++++++++-
2 files changed, 26 insertions(+), 3 deletions(-)
diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h
index 9eec546..8707c4f 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 70f27f8..d52f722 100644
--- a/tests/test-vmstate.c
+++ b/tests/test-vmstate.c
@@ -353,7 +353,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()
}
};
@@ -364,6 +365,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 */
};
@@ -419,6 +421,27 @@ static void test_simple_compare(void)
FAILURE(vmstate_load_state(loading, &vmstate_simple_compare, &obj, 1));
g_assert(!qemu_file_get_error(loading));
qemu_fclose(loading);
+
+ /* testing less equal */
+
+ loading = open_test_file(false);
+ memcpy(&obj, &obj_simple, sizeof(obj));
+ /* value on the wire is bigger, so fail */
+ obj.i32_1 = 8000;
+
+ FAILURE(vmstate_load_state(loading, &vmstate_simple_compare, &obj, 1));
+ g_assert(!qemu_file_get_error(loading));
+ qemu_fclose(loading);
+
+ loading = open_test_file(false);
+ memcpy(&obj, &obj_simple, sizeof(obj));
+ /* value on the wire is lower, so success */
+ obj.i32_1 = 80000;
+
+ SUCCESS(vmstate_load_state(loading, &vmstate_simple_compare, &obj, 1));
+ g_assert(!qemu_file_get_error(loading));
+ qemu_fclose(loading);
+
}
#undef FIELD_ASSERT
--
1.9.0
- [Qemu-devel] [PATCH 17/97] vmstate: Test for VMSTATE_UINT16_TEST, (continued)
- [Qemu-devel] [PATCH 17/97] vmstate: Test for VMSTATE_UINT16_TEST, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 19/97] vmstate: Test for VMSTATE_UINT64_TEST, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 18/97] vmstate: Test for VMSTATE_UINT32_TEST, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 21/97] vmstate: Test for VMSTATE_UNUSED, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 20/97] vmstate: Test for VMSTATE_FLOAT64, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 22/97] vmstate: Test for VMSTATE_BITMAP, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 24/97] vmstate: Test for VMSTATE_UINT16_EQUAL, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 25/97] vmstate: Test for VMSTATE_UINT32_EQUAL, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 23/97] vmstate: Test for VMSTATE_UINT8_EQUAL, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 26/97] vmstate: Test for VMSTATE_UINT64_EQUAL, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 28/97] vmstate: Test for VMSTATE_INT32_LE,
Juan Quintela <=
- [Qemu-devel] [PATCH 31/97] vmstate: Test for VMSTATE_ARRAY_BOOL_TEST, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 29/97] vmstate: s/VMSTATE_INT32_LE/VMSTATE_INT32_POSITIVE_LE/, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 30/97] vmstate: Move VMSTATE_TIMER_V to VMSTATE_TIMER_TEST, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 32/97] vmstate: Test for VMSTATE_UINT8_ARRAY, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 27/97] vmstate: Test for VMSTATE_INT32_EQUAL, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 34/97] vmstate: Test for VMSTATE_UINT32_ARRAY{_TEST}, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 33/97] vmstate: Test for VMSTATE_UINT16_ARRAY, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 35/97] vmstate: Test for VMSTATE_UINT64_ARRAY{_TEST}, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 37/97] vmstate: Test for VMSTATE_INT32_ARRAY{_TEST}, Juan Quintela, 2014/04/06
- [Qemu-devel] [PATCH 40/97] vmstate: Test for VMSTATE_UINT8_2DARRAY, Juan Quintela, 2014/04/06