diff --git a/Makefile.am b/Makefile.am
index 1ea8f50..50dee6b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -35,12 +35,16 @@
 test_get_flash_info_v2_SOURCES = test/get_flash_info_v2.c \
 				 $(TEST_MBOX_SRCS) $(TEST_MOCK_SRCS)
 
+test_create_read_window_v2_SOURCES = test/create_read_window_v2.c \
+				     $(TEST_MBOX_SRCS) $(TEST_MOCK_SRCS)
+
 check_PROGRAMS = test/sanity \
 		 test/copy_flash \
 		 test/erase_flash \
 		 test/write_flash \
 		 test/get_mbox_info_v2 \
 		 test/reset_state \
-		 test/get_flash_info_v2
+		 test/get_flash_info_v2 \
+		 test/create_read_window_v2
 
 TESTS = $(check_PROGRAMS)
diff --git a/test/create_read_window_v2.c b/test/create_read_window_v2.c
new file mode 100644
index 0000000..930f50f
--- /dev/null
+++ b/test/create_read_window_v2.c
@@ -0,0 +1,76 @@
+/*
+ * MBox Daemon Test File
+ *
+ * Copyright 2017 IBM
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <assert.h>
+
+#include "mbox.h"
+#include "mboxd_msg.h"
+
+#include "test/mbox.h"
+#include "test/system.h"
+
+static const uint8_t get_info[] = {
+	0x02, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
+	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const uint8_t create_read_window[] = {
+	0x04, 0x01, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
+	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
+};
+
+static const uint8_t response[] = {
+	0x04, 0x01, 0xfd, 0xff, 0x03, 0x00, 0x00, 0x00,
+	0x00, 0x00, 0x00, 0x00, 0x00, 0x01
+};
+
+uint8_t data[3] = { 0xaa, 0x55, 0xaa };
+
+#define MEM_SIZE	sizeof(data)
+#define ERASE_SIZE	1
+#define N_WINDOWS	1
+#define WINDOW_SIZE	sizeof(data)
+
+int main(void)
+{
+	struct mbox_context *ctx;
+	int rc;
+
+	system_set_reserved_size(MEM_SIZE);
+	system_set_mtd_sizes(MEM_SIZE, ERASE_SIZE);
+
+	ctx = mbox_create_test_context(N_WINDOWS, WINDOW_SIZE);
+	rc = mbox_set_mtd_data(ctx, data, sizeof(data));
+	assert(rc == 0);
+
+	rc = mbox_command_dispatch(ctx, get_info, sizeof(get_info));
+	assert(rc == 1);
+
+	rc = mbox_command_dispatch(ctx, create_read_window,
+			sizeof(create_read_window));
+	assert(rc == 1);
+
+	rc = mbox_cmp(ctx, response, sizeof(response));
+	assert(rc == 0);
+
+	rc = memcmp(ctx->mem, data, sizeof(data));
+	assert(rc == 0);
+
+	return rc;
+};
